00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _H_cstrnpsr
00026 #define _H_cstrnpsr
00027
00028 #ifndef _H_constrnt
00029 #include "constrnt.h"
00030 #endif
00031
00032 #ifdef LOCALE
00033 #undef LOCALE
00034 #endif
00035
00036 #ifdef _CSTRNPSR_SOURCE_
00037 #define LOCALE
00038 #else
00039 #define LOCALE extern
00040 #endif
00041
00042 struct constraintParseRecord
00043 {
00044 unsigned int type : 1;
00045 unsigned int range : 1;
00046 unsigned int allowedSymbols : 1;
00047 unsigned int allowedStrings : 1;
00048 unsigned int allowedLexemes : 1;
00049 unsigned int allowedFloats : 1;
00050 unsigned int allowedIntegers : 1;
00051 unsigned int allowedNumbers : 1;
00052 unsigned int allowedValues : 1;
00053 unsigned int allowedClasses : 1;
00054 unsigned int allowedInstanceNames : 1;
00055 unsigned int cardinality : 1;
00056 };
00057
00058 typedef struct constraintParseRecord CONSTRAINT_PARSE_RECORD;
00059
00060 LOCALE intBool CheckConstraintParseConflicts(void *,CONSTRAINT_RECORD *);
00061 LOCALE void AttributeConflictErrorMessage(void *,char *,char *);
00062 #if (! RUN_TIME) && (! BLOAD_ONLY)
00063 LOCALE void InitializeConstraintParseRecord(CONSTRAINT_PARSE_RECORD *);
00064 LOCALE intBool StandardConstraint(char *);
00065 LOCALE intBool ParseStandardConstraint(void *,char *,char *,
00066 CONSTRAINT_RECORD *,
00067 CONSTRAINT_PARSE_RECORD *,
00068 int);
00069 LOCALE void OverlayConstraint(void *,CONSTRAINT_PARSE_RECORD *,
00070 CONSTRAINT_RECORD *,CONSTRAINT_RECORD *);
00071 LOCALE void OverlayConstraintParseRecord(CONSTRAINT_PARSE_RECORD *,
00072 CONSTRAINT_PARSE_RECORD *);
00073 #endif
00074
00075 #endif
00076
00077
00078