Module: Castkit::Inflector
- Defined in:
- lib/castkit/inflector.rb
Overview
Provides string transformation utilities used internally by Castkit
Class Method Summary collapse
-
.pascalize(string) ⇒ String
Converts a snake_case or underscored string into PascalCase.
-
.underscore(string) ⇒ String
Converts a PascalCase or camelCase string to snake_case.
-
.unqualified_name(klass) ⇒ String
Returns the unqualified class name from a namespaced class.
Class Method Details
.pascalize(string) ⇒ String
Converts a snake_case or underscored string into PascalCase.
26 27 28 |
# File 'lib/castkit/inflector.rb', line 26 def pascalize(string) underscore(string).to_s.split("_").map(&:capitalize).join end |
.underscore(string) ⇒ String
Converts a PascalCase or camelCase string to snake_case.
38 39 40 41 42 43 44 |
# File 'lib/castkit/inflector.rb', line 38 def underscore(string) string .to_s .gsub(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .downcase end |
.unqualified_name(klass) ⇒ String
Returns the unqualified class name from a namespaced class.
14 15 16 |
# File 'lib/castkit/inflector.rb', line 14 def unqualified_name(klass) klass.name.to_s.split("::").last end |