Class: Tableling::Settings
- Inherits:
-
Object
- Object
- Tableling::Settings
- Defined in:
- lib/tableling-rails/settings.rb
Instance Method Summary collapse
- #configure(&block) ⇒ Object
- #dsl ⇒ Object
-
#initialize(parent = nil) ⇒ Settings
constructor
A new instance of Settings.
- #serialize_type(type, &block) ⇒ Object
- #type_serializers ⇒ Object
Constructor Details
#initialize(parent = nil) ⇒ Settings
Returns a new instance of Settings.
6 7 8 9 |
# File 'lib/tableling-rails/settings.rb', line 6 def initialize parent = nil @parent = parent @type_serializers = [] end |
Instance Method Details
#configure(&block) ⇒ Object
11 12 13 |
# File 'lib/tableling-rails/settings.rb', line 11 def configure &block instance_eval &block if block end |
#dsl ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/tableling-rails/settings.rb', line 23 def dsl m = Module.new do def serialize_type type, &block @settings.serialize_type type, &block end end m.instance_variable_set :@settings, self m end |
#serialize_type(type, &block) ⇒ Object
15 16 17 |
# File 'lib/tableling-rails/settings.rb', line 15 def serialize_type type, &block @type_serializers << TypeSerializer.new(type, block) end |
#type_serializers ⇒ Object
19 20 21 |
# File 'lib/tableling-rails/settings.rb', line 19 def type_serializers (@parent ? @parent.type_serializers : []) + @type_serializers end |