BIE |
BIE::RecordType Class ReferenceRecord Types define a set of (name, type) pairs like a C-struct declaration. More...
Inheritance diagram for BIE::RecordType:
![]()
Collaboration diagram for BIE::RecordType:
![]()
Detailed DescriptionRecord Types define a set of (name, type) pairs like a C-struct declaration.All names in a record type are distinct, and all pairs are ordered. This means that referring to a field makes sense whether by name or by field index number. Field indices begin at 1, not 0. All RecordType objects are immutable: methods for creating new record types do not modify the existing object and return completely new record type objects. In CLI, this means you have to use commands in the following manner so that you get the new object: set rt = new RecordType set rt = rt->insertField(1, "fieldone", int); set rt = rt->insertField(2, "fieldtwo", string); Member Typedef Documentation
This structure holds pairs of fieldname and fieldtype pairs. Arrays of these structures can be used to construct record types.
Constructor & Destructor Documentation
Creates an exact copy of an existing record type object.
Member Function Documentation
Deletes a range of fields. All fields in this range including those used to specify the boundary are deleted.
Inserts a new field. Can be used to append fields by inserting at position (n+1). If a field with the given name already exists then the exception NameClashException is thrown. Where the specified insertion point is not in the range 1 to (n+1) then NoSuchFieldException is thrown.
Inserts another record type. Can be used to append by inserting at position (n+1). If any fields in the record being inserted clash names with existing fields then the exception NameClashException is thrown. Where the specified insertion point is not in the range 1 to (n+1) then NoSuchFieldException is thrown.
Constructs a union of the two types by adding fields from the argument not already in the type instance this method is invoked on. A TypeException is thrown if there is a field in both types with the same name but different type.
Constructs a new record type by selecting the fields specified in the vector on field indices. No duplicate fields are allowed, and all fields must be present in the existing object.
Constructs a new record type by selecting the fields specified in the vector of names. No duplicate fields are allowed, and all fields must be present in the existing object.
Type equality -- both types must have the same (name,type) pairs. Fields need not be in the same order.
Is the argument a subset of the existing type? No equality of order implied.
The documentation for this class was generated from the following file:
Send suggestions, questions, and feedback to WEINBERG at ASTRO dot UMASS dot EDU. Documentation generated at Fri Mar 26 00:35:13 2010 by
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||