Hyperobject is an Common Lisp object representation library based on the Metaobject Protocol.
sql-name | Overrides default name of SQL table. |
version | Sets the version number of the class. Can be used to convert previous version of the class. |
instanciable | If NIL, the class can not be instanciated by the user. |
description | The class description. |
sql-name | Override name of the SQL column |
unique | The values in the slot must be unique |
stored | The values in the slot are stored in the database. |
indexed | The values of the slot are indexed in the database. |
nil-text | The text to print if the slot is NIL |
value-type | Sets the data type for the field. See the next section for complete details |
inverse | Sets the name of an automatically generated lookup function based on a key value for this slot |
Valid types for a hyperobjectslot along with their coresponding SQL types are listed in the below table.
string | TEXT |
(string n) (varchar n) | VARCHAR(n) |
(char n) | CHAR(n) |
character | CHAR(1) |
float single-float | float |
double-float | double |
blob | BLOB |
This field sets up the storage of a slot of hold a cached object or list of objects. A lookup function and the keys to the function are also specified.
The format for the subobject field is:
(