/** @page defsMemoryManager Definitions The following definitions describe terms used throughout the documentation of the Memory Manager. @anchor definition_of_declaration @section Declaration A declaration is a statement that a region of memory has a particular type, organization and an optional name. A declaration is a statement, consisting of a @ref definition_of_type_specifier "type_specifier" followed by a @ref definition_of_declarator "declarator", that specifies that a region of memory has a type, organization and an optional name. Example: int *foo[2][3] The type-specifier is: int The declarator is : *foo[2][3] @anchor definition_of_declarator @section Declarator A declarator consists of zero or more pointers (asterisks) followed by a variable name, followed by zero of more bracketed integers. @anchor definition_of_intrinsic_type @section Intrinsic-type An intrinsic type is a fundemental data type that the Trick Memory Manager inherently "knows" about, by design. They are a subset of the intrinsic C/C++ data types: - char - short - int - long - float - double - long long - wchar_t - unsigned char - unsigned short - unsigned int - unsigned long - unsigned long long @anchor definition_of_singleton @section Singleton A singleton is a set of exactly one item. For example: The following is a @ref definition_of_declaration "declaration" of exactly one double named S. S is not arrayed. S is a singleton. double S; It is convenient to consider a singleton as a zero dimensional array. @anchor definition_of_intrinsic_type_specifier @section Intrinsic-type-specifier A type-specifier is a name that specifies an \ref definition_of_intrinsic_type "intrinsic type" or a \ref definition_of_user_defined_type_specifier "user defined type". @anchor definition_of_user_defined_type_specifier @section User-defined-type-specifier A user defined type specifier is the name of a typedef'ed struct or a class, including if necessary, scope resolution operators ( i.e., "::"). */