Module: Grokdown::Composing
- Defined in:
- lib/grokdown/composing.rb
Defined Under Namespace
Modules: InstanceMethods
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.extended(base) ⇒ Object
3 |
# File 'lib/grokdown/composing.rb', line 3 def self.extended(base) = base.include(InstanceMethods) |
Instance Method Details
#can_compose?(object) ⇒ Boolean
5 |
# File 'lib/grokdown/composing.rb', line 5 def can_compose?(object) = public_instance_methods.include?(composition_method(object)) |
#composition_method(object) ⇒ Object
7 8 9 |
# File 'lib/grokdown/composing.rb', line 7 def composition_method(object) :"add_#{object.class.name.gsub(/#<.*>::/,"").gsub("::", "_").gsub(/([A-Z])(?=[A-Z][a-z])|([a-z\d])(?=[A-Z])/) { ($1 || $2) << "_" }.downcase}" if object.class.name end |