src/clipsrules/core/symbol.h File Reference

#include <stdlib.h>

Include dependency graph for symbol.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  symbolHashNode
struct  floatHashNode
struct  integerHashNode
struct  bitMapHashNode
struct  externalAddressHashNode
struct  genericHashNode
struct  ephemeron
struct  symbolMatch
struct  symbolData

Defines

#define LOCALE   extern
#define SYMBOL_HASH_SIZE   63559L
#define FLOAT_HASH_SIZE   8191
#define INTEGER_HASH_SIZE   8191
#define BITMAP_HASH_SIZE   8191
#define EXTERNAL_ADDRESS_HASH_SIZE   8191
#define ValueToString(target)   (((struct symbolHashNode *) (target))->contents)
#define ValueToDouble(target)   (((struct floatHashNode *) (target))->contents)
#define ValueToLong(target)   (((struct integerHashNode *) (target))->contents)
#define ValueToInteger(target)   ((int) (((struct integerHashNode *) (target))->contents))
#define ValueToBitMap(target)   ((void *) ((struct bitMapHashNode *) (target))->contents)
#define ValueToExternalAddress(target)   ((void *) ((struct externalAddressHashNode *) (target))->externalAddress)
#define EnvValueToString(theEnv, target)   (((struct symbolHashNode *) (target))->contents)
#define EnvValueToDouble(theEnv, target)   (((struct floatHashNode *) (target))->contents)
#define EnvValueToLong(theEnv, target)   (((struct integerHashNode *) (target))->contents)
#define EnvValueToInteger(theEnv, target)   ((int) (((struct integerHashNode *) (target))->contents))
#define EnvValueToBitMap(theEnv, target)   ((void *) ((struct bitMapHashNode *) (target))->contents)
#define EnvValueToExternalAddress(theEnv, target)   ((void *) ((struct externalAddressHashNode *) (target))->externalAddress)
#define IncrementSymbolCount(theValue)   (((SYMBOL_HN *) theValue)->count++)
#define IncrementFloatCount(theValue)   (((FLOAT_HN *) theValue)->count++)
#define IncrementIntegerCount(theValue)   (((INTEGER_HN *) theValue)->count++)
#define IncrementBitMapCount(theValue)   (((BITMAP_HN *) theValue)->count++)
#define IncrementExternalAddressCount(theValue)   (((EXTERNAL_ADDRESS_HN *) theValue)->count++)
#define SYMBOL_DATA   49
#define SymbolData(theEnv)   ((struct symbolData *) GetEnvironmentData(theEnv,SYMBOL_DATA))
#define EnvFalseSymbol(theEnv)   SymbolData(theEnv)->FalseSymbolHN
#define EnvTrueSymbol(theEnv)   SymbolData(theEnv)->TrueSymbolHN
#define FalseSymbol()   SymbolData(GetCurrentEnvironment())->FalseSymbolHN
#define TrueSymbol()   SymbolData(GetCurrentEnvironment())->TrueSymbolHN
#define AddSymbol(a)   EnvAddSymbol(GetCurrentEnvironment(),a)
#define AddLong(a)   EnvAddLong(GetCurrentEnvironment(),a)
#define AddDouble(a)   EnvAddDouble(GetCurrentEnvironment(),a)

Typedefs

typedef struct symbolHashNode SYMBOL_HN
typedef struct floatHashNode FLOAT_HN
typedef struct integerHashNode INTEGER_HN
typedef struct bitMapHashNode BITMAP_HN
typedef struct
externalAddressHashNode 
EXTERNAL_ADDRESS_HN
typedef struct genericHashNode GENERIC_HN

Functions

LOCALE void InitializeAtomTables (void *, struct symbolHashNode **, struct floatHashNode **, struct integerHashNode **, struct bitMapHashNode **, struct externalAddressHashNode **)
LOCALE void * EnvAddSymbol (void *, char *)
LOCALE SYMBOL_HNFindSymbolHN (void *, char *)
LOCALE void * EnvAddDouble (void *, double)
LOCALE void * EnvAddLong (void *, long long)
LOCALE void * EnvAddBitMap (void *, void *, unsigned)
LOCALE void * EnvAddExternalAddress (void *, void *, unsigned)
LOCALE INTEGER_HNFindLongHN (void *, long long)
LOCALE unsigned long HashSymbol (char *, unsigned long)
LOCALE unsigned long HashFloat (double, unsigned long)
LOCALE unsigned long HashInteger (long long, unsigned long)
LOCALE unsigned long HashBitMap (char *, unsigned long, unsigned)
LOCALE unsigned long HashExternalAddress (void *, unsigned long)
LOCALE void DecrementSymbolCount (void *, struct symbolHashNode *)
LOCALE void DecrementFloatCount (void *, struct floatHashNode *)
LOCALE void DecrementIntegerCount (void *, struct integerHashNode *)
LOCALE void DecrementBitMapCount (void *, struct bitMapHashNode *)
LOCALE void DecrementExternalAddressCount (void *, struct externalAddressHashNode *)
LOCALE void RemoveEphemeralAtoms (void *)
LOCALE struct symbolHashNode ** GetSymbolTable (void *)
LOCALE void SetSymbolTable (void *, struct symbolHashNode **)
LOCALE struct floatHashNode ** GetFloatTable (void *)
LOCALE void SetFloatTable (void *, struct floatHashNode **)
LOCALE struct integerHashNode ** GetIntegerTable (void *)
LOCALE void SetIntegerTable (void *, struct integerHashNode **)
LOCALE struct bitMapHashNode ** GetBitMapTable (void *)
LOCALE void SetBitMapTable (void *, struct bitMapHashNode **)
LOCALE struct
externalAddressHashNode ** 
GetExternalAddressTable (void *)
LOCALE void SetExternalAddressTable (void *, struct externalAddressHashNode **)
LOCALE void RefreshSpecialSymbols (void *)
LOCALE struct symbolMatchFindSymbolMatches (void *, char *, unsigned *, size_t *)
LOCALE void ReturnSymbolMatches (void *, struct symbolMatch *)
LOCALE SYMBOL_HNGetNextSymbolMatch (void *, char *, size_t, SYMBOL_HN *, int, size_t *)
LOCALE void ClearBitString (void *, unsigned)
LOCALE void SetAtomicValueIndices (void *, int)
LOCALE void RestoreAtomicValueBuckets (void *)


Define Documentation

#define AddDouble (  )     EnvAddDouble(GetCurrentEnvironment(),a)

Definition at line 253 of file symbol.h.

#define AddLong (  )     EnvAddLong(GetCurrentEnvironment(),a)

Definition at line 252 of file symbol.h.

#define AddSymbol (  )     EnvAddSymbol(GetCurrentEnvironment(),a)

Definition at line 251 of file symbol.h.

#define BITMAP_HASH_SIZE   8191

Definition at line 57 of file symbol.h.

#define EnvFalseSymbol ( theEnv   )     SymbolData(theEnv)->FalseSymbolHN

Definition at line 246 of file symbol.h.

#define EnvTrueSymbol ( theEnv   )     SymbolData(theEnv)->TrueSymbolHN

Definition at line 247 of file symbol.h.

#define EnvValueToBitMap ( theEnv,
target   )     ((void *) ((struct bitMapHashNode *) (target))->contents)

Definition at line 199 of file symbol.h.

#define EnvValueToDouble ( theEnv,
target   )     (((struct floatHashNode *) (target))->contents)

Definition at line 196 of file symbol.h.

#define EnvValueToExternalAddress ( theEnv,
target   )     ((void *) ((struct externalAddressHashNode *) (target))->externalAddress)

Definition at line 200 of file symbol.h.

#define EnvValueToInteger ( theEnv,
target   )     ((int) (((struct integerHashNode *) (target))->contents))

Definition at line 198 of file symbol.h.

#define EnvValueToLong ( theEnv,
target   )     (((struct integerHashNode *) (target))->contents)

Definition at line 197 of file symbol.h.

#define EnvValueToString ( theEnv,
target   )     (((struct symbolHashNode *) (target))->contents)

Definition at line 195 of file symbol.h.

#define EXTERNAL_ADDRESS_HASH_SIZE   8191

Definition at line 61 of file symbol.h.

 
#define FalseSymbol (  )     SymbolData(GetCurrentEnvironment())->FalseSymbolHN

Definition at line 249 of file symbol.h.

#define FLOAT_HASH_SIZE   8191

Definition at line 49 of file symbol.h.

#define IncrementBitMapCount ( theValue   )     (((BITMAP_HN *) theValue)->count++)

Definition at line 205 of file symbol.h.

#define IncrementExternalAddressCount ( theValue   )     (((EXTERNAL_ADDRESS_HN *) theValue)->count++)

Definition at line 206 of file symbol.h.

#define IncrementFloatCount ( theValue   )     (((FLOAT_HN *) theValue)->count++)

Definition at line 203 of file symbol.h.

#define IncrementIntegerCount ( theValue   )     (((INTEGER_HN *) theValue)->count++)

Definition at line 204 of file symbol.h.

#define IncrementSymbolCount ( theValue   )     (((SYMBOL_HN *) theValue)->count++)

Definition at line 202 of file symbol.h.

#define INTEGER_HASH_SIZE   8191

Definition at line 53 of file symbol.h.

#define LOCALE   extern

Definition at line 39 of file symbol.h.

#define SYMBOL_DATA   49

Definition at line 212 of file symbol.h.

#define SYMBOL_HASH_SIZE   63559L

Definition at line 45 of file symbol.h.

#define SymbolData ( theEnv   )     ((struct symbolData *) GetEnvironmentData(theEnv,SYMBOL_DATA))

Definition at line 245 of file symbol.h.

 
#define TrueSymbol (  )     SymbolData(GetCurrentEnvironment())->TrueSymbolHN

Definition at line 250 of file symbol.h.

#define ValueToBitMap ( target   )     ((void *) ((struct bitMapHashNode *) (target))->contents)

Definition at line 192 of file symbol.h.

#define ValueToDouble ( target   )     (((struct floatHashNode *) (target))->contents)

Definition at line 189 of file symbol.h.

#define ValueToExternalAddress ( target   )     ((void *) ((struct externalAddressHashNode *) (target))->externalAddress)

Definition at line 193 of file symbol.h.

#define ValueToInteger ( target   )     ((int) (((struct integerHashNode *) (target))->contents))

Definition at line 191 of file symbol.h.

#define ValueToLong ( target   )     (((struct integerHashNode *) (target))->contents)

Definition at line 190 of file symbol.h.

#define ValueToString ( target   )     (((struct symbolHashNode *) (target))->contents)

Definition at line 188 of file symbol.h.


Typedef Documentation

typedef struct bitMapHashNode BITMAP_HN

Definition at line 158 of file symbol.h.

Definition at line 159 of file symbol.h.

typedef struct floatHashNode FLOAT_HN

Definition at line 156 of file symbol.h.

typedef struct genericHashNode GENERIC_HN

Definition at line 160 of file symbol.h.

typedef struct integerHashNode INTEGER_HN

Definition at line 157 of file symbol.h.

typedef struct symbolHashNode SYMBOL_HN

Definition at line 155 of file symbol.h.


Function Documentation

LOCALE void ClearBitString ( void *  ,
unsigned   
)

Definition at line 1429 of file symbol.c.

LOCALE void DecrementBitMapCount ( void *  ,
struct bitMapHashNode  
)

Definition at line 974 of file symbol.c.

LOCALE void DecrementExternalAddressCount ( void *  ,
struct externalAddressHashNode  
)

Definition at line 1008 of file symbol.c.

LOCALE void DecrementFloatCount ( void *  ,
struct floatHashNode  
)

Definition at line 918 of file symbol.c.

LOCALE void DecrementIntegerCount ( void *  ,
struct integerHashNode  
)

Definition at line 946 of file symbol.c.

LOCALE void DecrementSymbolCount ( void *  ,
struct symbolHashNode  
)

Definition at line 884 of file symbol.c.

LOCALE void* EnvAddBitMap ( void *  ,
void *  ,
unsigned   
)

Definition at line 598 of file symbol.c.

LOCALE void* EnvAddDouble ( void *  ,
double   
)

Definition at line 448 of file symbol.c.

LOCALE void* EnvAddExternalAddress ( void *  ,
void *  ,
unsigned   
)

Definition at line 681 of file symbol.c.

LOCALE void* EnvAddLong ( void *  ,
long  long 
)

Definition at line 513 of file symbol.c.

LOCALE void* EnvAddSymbol ( void *  ,
char *   
)

Definition at line 350 of file symbol.c.

LOCALE INTEGER_HN* FindLongHN ( void *  ,
long  long 
)

Definition at line 575 of file symbol.c.

LOCALE SYMBOL_HN* FindSymbolHN ( void *  ,
char *   
)

Definition at line 422 of file symbol.c.

LOCALE struct symbolMatch* FindSymbolMatches ( void *  ,
char *  ,
unsigned *  ,
size_t *   
) [read]

Definition at line 1383 of file symbol.c.

LOCALE struct bitMapHashNode** GetBitMapTable ( void *   )  [read]

Definition at line 1327 of file symbol.c.

LOCALE struct externalAddressHashNode** GetExternalAddressTable ( void *   )  [read]

Definition at line 1346 of file symbol.c.

LOCALE struct floatHashNode** GetFloatTable ( void *   )  [read]

Definition at line 1289 of file symbol.c.

LOCALE struct integerHashNode** GetIntegerTable ( void *   )  [read]

Definition at line 1308 of file symbol.c.

LOCALE SYMBOL_HN* GetNextSymbolMatch ( void *  ,
char *  ,
size_t  ,
SYMBOL_HN ,
int  ,
size_t *   
)

Definition at line 1445 of file symbol.c.

LOCALE struct symbolHashNode** GetSymbolTable ( void *   )  [read]

Definition at line 1270 of file symbol.c.

LOCALE unsigned long HashBitMap ( char *  ,
unsigned  long,
unsigned   
)

Definition at line 836 of file symbol.c.

LOCALE unsigned long HashExternalAddress ( void *  ,
unsigned  long 
)

Definition at line 812 of file symbol.c.

LOCALE unsigned long HashFloat ( double  ,
unsigned  long 
)

Definition at line 766 of file symbol.c.

LOCALE unsigned long HashInteger ( long  long,
unsigned  long 
)

Definition at line 788 of file symbol.c.

LOCALE unsigned long HashSymbol ( char *  ,
unsigned  long 
)

Definition at line 747 of file symbol.c.

LOCALE void InitializeAtomTables ( void *  ,
struct symbolHashNode **  ,
struct floatHashNode **  ,
struct integerHashNode **  ,
struct bitMapHashNode **  ,
struct externalAddressHashNode **   
)

Definition at line 91 of file symbol.c.

LOCALE void RefreshSpecialSymbols ( void *   ) 

Definition at line 1367 of file symbol.c.

LOCALE void RemoveEphemeralAtoms ( void *   ) 

Definition at line 1172 of file symbol.c.

LOCALE void RestoreAtomicValueBuckets ( void *   ) 

Definition at line 1724 of file symbol.c.

LOCALE void ReturnSymbolMatches ( void *  ,
struct symbolMatch  
)

Definition at line 1412 of file symbol.c.

LOCALE void SetAtomicValueIndices ( void *  ,
int   
)

Definition at line 1619 of file symbol.c.

LOCALE void SetBitMapTable ( void *  ,
struct bitMapHashNode **   
)

Definition at line 1336 of file symbol.c.

LOCALE void SetExternalAddressTable ( void *  ,
struct externalAddressHashNode **   
)

Definition at line 1355 of file symbol.c.

LOCALE void SetFloatTable ( void *  ,
struct floatHashNode **   
)

Definition at line 1298 of file symbol.c.

LOCALE void SetIntegerTable ( void *  ,
struct integerHashNode **   
)

Definition at line 1317 of file symbol.c.

LOCALE void SetSymbolTable ( void *  ,
struct symbolHashNode **   
)

Definition at line 1279 of file symbol.c.


Generated on Mon Jan 10 22:33:42 2011 by  doxygen 1.5.6