module Redbreast::Helper::General
Module with general metods used in creating files
Constants
- ESCAPE_KEYWORDS
Public Instance Methods
app_name()
click to toggle source
# File lib/redbreast/helpers/general.rb, line 28 def app_name @app_name ||= config[:app_name] end
bundles()
click to toggle source
# File lib/redbreast/helpers/general.rb, line 24 def bundles @bundles ||= config[:bundles] end
clean_case_name(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 59 def clean_case_name(name) clean_variable_name(name) end
clean_enum_name(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 38 def clean_enum_name(name) clean_name = name .split(/[^0-9a-zA-Z]/) .reject(&:empty?) .map(&:capitalize) .join escape_with_underscore_if_needed(clean_name) end
clean_variable_name(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 63 def clean_variable_name(name) clean_name = name .split(/[^0-9a-zA-Z]/) .reject(&:empty?) .each_with_index .map { |v, i| i.zero? ? v.tap { |char| char[0] = char[0].downcase } : v.capitalize } .join escaped_underscore = escape_with_underscore_if_needed(clean_name) escape_keyword_if_needed(escaped_underscore) end
config()
click to toggle source
# File lib/redbreast/helpers/general.rb, line 16 def config @config ||= Redbreast::IO::Config.read end
escape_keyword_if_needed(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 81 def escape_keyword_if_needed(name) return name unless ESCAPE_KEYWORDS.include? name "`#{name}`" end
escape_with_underscore_if_needed(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 75 def escape_with_underscore_if_needed(name) return name if name.match(/^[A-Za-z_]/) '_' + name end
indent(level = 0, initial = '')
click to toggle source
# File lib/redbreast/helpers/general.rb, line 32 def indent(level = 0, initial = '') (1..level) .to_a.reduce('') { |result, _| result + ' ' } .concat(initial) end
programming_language()
click to toggle source
# File lib/redbreast/helpers/general.rb, line 20 def programming_language @programming_language ||= config[:language] end
upper_camel_case(name)
click to toggle source
# File lib/redbreast/helpers/general.rb, line 48 def upper_camel_case(name) clean_name = name .split(/[^0-9a-zA-Z]/) .reject(&:empty?) .each_with_index .map { |v, i| i.zero? ? v.tap { |char| char[0] = char[0].upcase } : v.capitalize } .join escape_with_underscore_if_needed(clean_name) end