Module: Voom::Symbol
- Included in:
- ContainerMethods, Presenters::App
- Defined in:
- lib/voom/symbol/to_str.rb
Overview
Helper module for converting symbol naming to string. It provides common conversions for variable naming (snake_case) and class naming (class_name)
Instance Method Summary collapse
-
#class_name(classname) ⇒ Object
Converts a namespaced symbol or string to a proper class name with modules.
-
#snake_case(str) ⇒ Object
Converts a namespaced string or symbol to snake_case.
-
#sym_to_str(name) ⇒ Object
Maps symbols to strings.
Instance Method Details
#class_name(classname) ⇒ Object
Converts a namespaced symbol or string to a proper class name with modules
19 20 21 22 |
# File 'lib/voom/symbol/to_str.rb', line 19 def class_name(classname) classname = sym_to_str(classname) classname.split('.').map { |m| inflector.camelize(m) }.join('::') end |
#snake_case(str) ⇒ Object
Converts a namespaced string or symbol to snake_case
14 15 16 |
# File 'lib/voom/symbol/to_str.rb', line 14 def snake_case(str) inflector.underscore(sym_to_str(str).tr('.', '_')) end |
#sym_to_str(name) ⇒ Object
Maps symbols to strings
8 9 10 11 |
# File 'lib/voom/symbol/to_str.rb', line 8 def sym_to_str(name) return name if name.is_a? ::String name.to_s end |