class ReportLogic::Field
Attributes
config[R]
type[R]
Public Class Methods
new(name, value = nil, **config)
click to toggle source
# File lib/report_logic/field.rb, line 5 def initialize(name, value = nil, **config) @name = name @value = value @type = config.delete :type @decorate_name = config.delete :decorate_name @decorate_value = config.delete :decorate_value @config = config end
Public Instance Methods
guess_type()
click to toggle source
# File lib/report_logic/field.rb, line 26 def guess_type @value.class end
name()
click to toggle source
# File lib/report_logic/field.rb, line 14 def name apply_decorators @name, @decorate_name end
value()
click to toggle source
# File lib/report_logic/field.rb, line 18 def value apply_decorators @value, @decorate_value end
Private Instance Methods
apply_decorators(str, decorators)
click to toggle source
# File lib/report_logic/field.rb, line 32 def apply_decorators(str, decorators) return str unless decorators if decorators.respond_to? :each decorators.each do |dec| str = dec.call str end return str end decorators.call str end