Method: Qrb::DataType#contract

Defined in:
lib/qrb/data_type.rb

#contract(name, infotype) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/qrb/data_type.rb', line 8

def contract(name, infotype)
  dresser   = method(name)
  undresser = instance_method(:"to_#{name}")
  ad_contracts[name] = [
    Qrb.type(infotype),
    dresser,
    ->(d){ undresser.bind(d).call }
  ]
end