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
00026 #ifndef _MPCL_TEXT_CODEGEN_DEFS__
00027 #define _MPCL_TEXT_CODEGEN_DEFS__
00028
00029 #include "../../util/collection/map.hh"
00030 #include "../string.hh"
00031 #include "defs.hh"
00032 #include "exceptions.hh"
00033 #include "variable_string.hh"
00034
00035
00037 namespace mpcl
00038 {
00039
00041 namespace text
00042 {
00043
00045 namespace codegen
00046 {
00047
00048 using util::collection::TMap;
00049
00051 typedef TMap<TString, TVariableString> TStringToVariableMap;
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061 extern const char* pkcCommentTagPattern;
00062 extern const char* pkcDOCTYPE_TagPattern_1;
00063 extern const char* pkcDOCTYPE_TagPattern_2;
00064 extern const char* pkcDOCTYPE_TagPattern_3;
00065 extern const char* pkcDOCTYPE_TagPattern_4;
00066 extern const char* pkcCDML_TagPattern_1;
00067 extern const char* pkcCDML_TagPattern_2;
00068 extern const char* pkcCDML_TagPattern_3;
00069 extern const char* pkcCDML_EndTagPattern;
00070 extern const char* pkcDESC_ElementPattern;
00071 extern const char* pkcDECLARE_TagPattern;
00072 extern const char* pkcDECLARE_EndTagPattern;
00073 extern const char* pkcINSTRUCT_TagPattern;
00074 extern const char* pkcINSTRUCT_EndTagPattern;
00075 extern const char* pkcVARIABLE_ElementPattern_1;
00076 extern const char* pkcVARIABLE_ElementPattern_2;
00077 extern const char* pkcVARIABLE_ElementPattern_3;
00078 extern const char* pkcCLAUSE_TagBegin;
00079 extern const char* pkcCLAUSE_TagNameAttr;
00080 extern const char* pkcCLAUSE_TagTargetAttr;
00081 extern const char* pkcCLAUSE_TagNoCheckAttr;
00082 extern const char* pkcCLAUSE_TagEnd;
00083 extern const char* pkcCLAUSE_BodyPattern;
00084
00085
00086
00087
00088 extern const char* pkcLT_EntityPattern;
00089 extern const char* pkcLT_EntityValue;
00090 extern const char* pkcGT_EntityPattern;
00091 extern const char* pkcGT_EntityValue;
00092 extern const char* pkcNL_EntityPattern;
00093 extern const char* pkcNL_EntityValue;
00094 extern const char* pkcEOC_EntityPattern;
00095 extern const char* pkcEntityPrefix;
00096 extern const char* pkcAMP_EntityPattern;
00097 extern const char* pkcAMP_EntityValue;
00098
00099
00100
00101
00102 extern size_t zEntityPrefixLength;
00103 extern size_t zLT_EntityPatternLength;
00104 extern size_t zGT_EntityPatternLength;
00105 extern size_t zNL_EntityPatternLength;
00106 extern size_t zEOC_EntityPatternLength;
00107 extern size_t zLT_EntityValueLength;
00108 extern size_t zGT_EntityValueLength;
00109 extern size_t zNL_EntityValueLength;
00110 extern size_t zAMP_EntityPatternLength;
00111 extern size_t zAMP_EntityValueLength;
00112
00113
00114
00115
00116
00117 extern const char* pkcTargetSeparator;
00118
00119
00120
00121
00122
00124 extern void InstantiateEntities (TString& ryTARGET_STRING);
00125
00126 }
00127
00128 }
00129
00130 }
00131
00132
00133 #endif // not _MPCL_TEXT_CODEGEN_DEFS__