Top Level Namespace
Defined Under Namespace
Modules: TStruct
Instance Method Summary collapse
Instance Method Details
#TStruct(sig) ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/tstruct.rb', line 3 def TStruct(sig) Module.new { sig.each { |name, type| define_method(:"#{name}=") { |value| raise TypeError unless type === value method(:"#{name}=").super_method.call value } } } end |