[NAME]
ALL.module.standard.protobject

[TITLE]
Protobject

[DESCRIPTION]

Protobject is a data type to provide support for prototype-based OOP. Arbitrary fields c
an be set to or gotten from a Protobject object. A delegator can also be set for such obj
ect. When a Protobject has a delegator, setting a field for this object will only affect 
this object, not the delegator.
     
   1  load protobject
   2  
   3  obj = Protobject()
   4  
   5  obj.name = 'FirstObject'  # set a field;
   6  
   7  io.writeln( obj.name )    # get a field;
   8  
   9  obj2 = Protobject()
  10  obj2.__proto__ = obj  # set a delegator;
  11  
  12  io.writeln( obj2.name )
  13  
  14  
  15  obj2.name = 'SecondObject'
  16  
  17  io.writeln( obj.name, obj2.name )