|
|
coherent
/* typed.h -- Data structures for an implimentation of internally
* typed data structures.
*
* This file has 5 major sections:
* TYPED_SPACE DECLARATIONS -- Declarations for typed_space in general.
* DATA TYPES -- Values for typed_space.ts_type.
* Make at least one entry here when you add new data types.
* STRUCTURE DECLARATIONS -- Declarations for specific typed spaces.
* Declare structures that describe the typed_space.ts_data element.
* FUNCTION DECLARATIONS -- Function names for specific typed spaces.
* Declare all the functions need to manipulate your data type.
* USEFUL SYMBOLS -- Symbols needed by specific typed spaces.
* Anything else you need to define should go here.
*/
/*
* DATA TYPES: (values for ts_type in a typed_space)
* All data types start with "T_".
* Similar data types share a common prefix which is defined like this:
* #define T_COMMON (space_type)0xhh00
* Specific types are then assigned sequentially from that:
* #define T_COMMON_SPECIFIC T_COMMON+n
*/
/*
* STRUCTURE DECLARATIONS.
* These define the typed_space.ts_data elements that go with the above
* data types. They should be typedef'd to a name derivable from the
* type name by removing the leading "T_" (see above.)
*
* E.g. For the type T_COMMON create this typedef:
* typedef common {
* ...
* } COMMON;
*
* If the specific types need their own structs do them like this:
* typedef common_specific {
* ...
* } COMMON_SPECIFIC;
*
*/
/* USEFUL SYMBOLS.
* If appropriate, be sure to define a form of NULL for your new data
* type. E.g. for the type COMMON
* #define COMMON_NULL ((COMMON *) 0)
*
* If you need any other symbols define them here.
*/
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.