Sha256: 13d7cca0b5506dd99a4803f64387209bdddb973751b22fcf3aeedc5388556617
Contents?: true
Size: 626 Bytes
Versions: 9
Compression:
Stored size: 626 Bytes
Contents
module Tableling class Settings def initialize parent = nil @parent = parent @type_serializers = [] end def configure &block instance_eval &block if block end def serialize_type type, &block @type_serializers << TypeSerializer.new(type, block) end def type_serializers (@parent ? @parent.type_serializers : []) + @type_serializers end 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 end end
Version data entries
9 entries across 9 versions & 1 rubygems