diff options
Diffstat (limited to 'src/factgen.h')
-rw-r--r-- | src/factgen.h | 57 |
1 files changed, 39 insertions, 18 deletions
diff --git a/src/factgen.h b/src/factgen.h index 2f04b85..d28b83e 100644 --- a/src/factgen.h +++ b/src/factgen.h @@ -1,7 +1,7 @@ /*******************************************************/ /* "C" Language Integrated Production System */ /* */ - /* CLIPS Version 6.20 01/31/02 */ + /* CLIPS Version 6.30 08/16/14 */ /* */ /* FACT RETE FUNCTION GENERATION HEADER FILE */ /*******************************************************/ @@ -16,6 +16,11 @@ /* */ /* Revision History: */ /* */ +/* 6.30: Support for performance optimizations. */ +/* */ +/* Increased maximum values for pattern/slot */ +/* indices. */ +/* */ /*************************************************************/ #ifndef _H_factgen @@ -82,7 +87,7 @@ struct factGetVarPN3Call struct factConstantPN1Call { unsigned int testForEquality : 1; - unsigned int whichSlot : 8; + unsigned short whichSlot; }; /******************************************************************/ @@ -96,8 +101,8 @@ struct factConstantPN2Call { unsigned int testForEquality : 1; unsigned int fromBeginning : 1; - unsigned int offset : 8; - unsigned int whichSlot : 8; + unsigned short offset; + unsigned short whichSlot; }; /**********************************************************/ @@ -109,6 +114,8 @@ struct factGetVarJN1Call { unsigned int factAddress : 1; unsigned int allFields : 1; + unsigned int lhs : 1; + unsigned int rhs : 1; unsigned short whichPattern; unsigned short whichSlot; unsigned short whichField; @@ -119,6 +126,8 @@ struct factGetVarJN1Call /**********************************************************/ struct factGetVarJN2Call { + unsigned int lhs : 1; + unsigned int rhs : 1; unsigned short whichPattern; unsigned short whichSlot; }; @@ -130,6 +139,8 @@ struct factGetVarJN3Call { unsigned int fromBeginning : 1; unsigned int fromEnd : 1; + unsigned int lhs : 1; + unsigned int rhs : 1; unsigned short beginOffset; unsigned short endOffset; unsigned short whichPattern; @@ -143,8 +154,8 @@ struct factCompVarsPN1Call { unsigned int pass : 1; unsigned int fail : 1; - unsigned int field1 : 7; - unsigned int field2 : 7; + unsigned short field1; + unsigned short field2; }; /**********************************************************/ @@ -154,9 +165,14 @@ struct factCompVarsJN1Call { unsigned int pass : 1; unsigned int fail : 1; - unsigned int slot1 : 7; - unsigned int pattern2 : 8; - unsigned int slot2 : 7; + unsigned int p1lhs: 1; + unsigned int p1rhs: 1; + unsigned int p2lhs: 1; + unsigned int p2rhs: 1; + unsigned short pattern1; + unsigned short pattern2; + unsigned short slot1; + unsigned short slot2; }; /**********************************************************/ @@ -166,13 +182,18 @@ struct factCompVarsJN2Call { unsigned int pass : 1; unsigned int fail : 1; - unsigned int slot1 : 7; + unsigned int p1lhs: 1; + unsigned int p1rhs: 1; + unsigned int p2lhs: 1; + unsigned int p2rhs: 1; unsigned int fromBeginning1 : 1; - unsigned int offset1 : 7; - unsigned int pattern2 : 8; - unsigned int slot2 : 7; unsigned int fromBeginning2 : 1; - unsigned int offset2 : 7; + unsigned short offset1; + unsigned short offset2; + unsigned short pattern1; + unsigned short pattern2; + unsigned short slot1; + unsigned short slot2; }; /**********************************************************/ @@ -197,13 +218,13 @@ struct factCheckLengthPNCall LOCALE struct expr *FactPNVariableComparison(void *,struct lhsParseNode *, struct lhsParseNode *); LOCALE struct expr *FactJNVariableComparison(void *,struct lhsParseNode *, - struct lhsParseNode *); - LOCALE void FactReplaceGetvar(void *,struct expr *,struct lhsParseNode *); + struct lhsParseNode *,int); + LOCALE void FactReplaceGetvar(void *,struct expr *,struct lhsParseNode *,int); LOCALE void FactReplaceGetfield(void *,struct expr *,struct lhsParseNode *); LOCALE struct expr *FactGenPNConstant(void *,struct lhsParseNode *); LOCALE struct expr *FactGenGetfield(void *,struct lhsParseNode *); - LOCALE struct expr *FactGenGetvar(void *,struct lhsParseNode *); + LOCALE struct expr *FactGenGetvar(void *,struct lhsParseNode *,int); LOCALE struct expr *FactGenCheckLength(void *,struct lhsParseNode *); LOCALE struct expr *FactGenCheckZeroLength(void *,unsigned); -#endif +#endif /* _H_factgen */ |