Class: Stove::Formatter::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/stove/formatter/base.rb

Direct Known Subclasses

Human, Silent

Class Method Summary collapse

Class Method Details

.formatter_method(*methods) ⇒ Object



10
11
12
13
14
15
16
17
18
# File 'lib/stove/formatter/base.rb', line 10

def formatter_method(*methods)
  methods.each do |name|
    formatter_methods << name

    define_method(name) do |*args|
      raise Stove::AbstractFunction
    end
  end
end

.formatter_methodsObject



24
25
26
# File 'lib/stove/formatter/base.rb', line 24

def formatter_methods
  @formatter_methods ||= []
end

.formattersObject



20
21
22
# File 'lib/stove/formatter/base.rb', line 20

def formatters
  @formatters ||= {}
end

.inherited(base) ⇒ Object



5
6
7
8
# File 'lib/stove/formatter/base.rb', line 5

def inherited(base)
  key = base.to_s.split('::').last.gsub(/(.)([A-Z])/,'\1_\2').downcase.to_sym
  formatters[key] = base
end