00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef BJC_PERSISTENCE_DATA
00020 #define BJC_PERSISTENCE_DATA
00021
00022 #define EDOC_SECTION_NAME ".edoc"
00023 #define EDOC_FILE_EXTENSION "edc"
00024
00025 #define BJC_PERSIST_START_KEY_CHAR '$'
00026 #define BJC_PERSIST_FINISH_KEY_CHAR ':'
00027 #define BJC_PERSIST_COMMENT_CHAR '#'
00028
00029 #define VALUE_RECORD_TYPE_HEADER 0
00030 #define VALUE_RECORD_TYPE_TYPE 1
00031 #define VALUE_RECORD_TYPE_FUNCTION 2
00032 #define VALUE_RECORD_TYPE_FILE 3
00033 #define VALUE_RECORD_TYPE_FUNCTION_TYPE 4
00034
00035 #define VALUE_RECORD_TYPE_HEADER_STRING "HEADER"
00036 #define VALUE_RECORD_TYPE_TYPE_STRING "TYPE"
00037 #define VALUE_RECORD_TYPE_FUNCTION_STRING "FUNCTION"
00038 #define VALUE_RECORD_TYPE_FILE_STRING "FILE"
00039 #define VALUE_RECORD_TYPE_FUNCTION_TYPE_STRING "FUNCTION_TYPE"
00040
00041 #define EDOC_FILE_VERSION 2
00042
00043
00044 #define KEY_TRANSLATION_UNITS_LS "Translation Units List Size"
00045 #define KEY_TRANSLATION_UNIT "Translation Unit"
00046
00047 #define KEY_REFERENCE_FILES_LS "Reference Files List Size"
00048 #define KEY_REFERENCE_FILE "Reference File"
00049
00050 #define KEY_RECORD_TYPE "Record Type"
00051 #define KEY_INDEX "Index"
00052 #define KEY_EDOC_VERSION "EDoc Version"
00053 #define KEY_FILE_NAME "File Name"
00054 #define KEY_CANONICAL_NAME "Canonical Name"
00055
00056 #define KEY_NAME "Name"
00057 #define KEY_LINK_NAME "Link Name"
00058 #define KEY_FULL_NAME "Full Name"
00059
00060 #define KEY_FUNCTION_TYPE "Function Type"
00061 #define KEY_IS_PUBLIC "Is Public"
00062 #define KEY_IS_INLINE "Is Inline"
00063 #define KEY_IS_IMPLICIT "Is Implicit"
00064
00065 #define KEY_METHOD_CONTEXT "Method Context"
00066 #define KEY_IS_METHOD "Is Method"
00067 #define KEY_PARAMETERS_LS "Parameters List Size"
00068 #define KEY_PARAMETERS_LI "Parameters List Item"
00069 #define KEY_IS_CONST "Is Const"
00070 #define KEY_IS_STATIC "Is Static"
00071
00072 #define KEY_RETURN_TYPE "Return Type"
00073 #define KEY_THROW_TYPE "Throw Type"
00074 #define KEY_ROOT_TYPE "Root Type"
00075 #define KEY_IDENTICAL_TYPE_LS "Identical Type List Size"
00076 #define KEY_IDENTICAL_TYPE_LI "Identical Type List Item"
00077 #define KEY_CATCHABLE_TYPE_LS "Catchable Type List Size"
00078 #define KEY_CATCHABLE_TYPE_LI "Catchable Type List Item"
00079 #define KEY_FUNCTION_CALL_LS "Function Calls List Size"
00080
00081 #define KEY_FUNCTION "Function"
00082
00083 #define KEY_FUNCP_CALLS_LS "Function Pointer Calls List Size"
00084
00085 #define KEY_TYPE "Type"
00086
00087 #define KEY_ORIGINATING_EXCEPTIONS_LS "Originating Exceptions List Size"
00088
00089
00090
00091 #define KEY_ADDRESS_TAKEN_LS "Address Taken List Size"
00092
00093 #define KEY_FUNCTION_POINTER_TYPE "Function Pointer Type"
00094 #define KEY_HAS_EXCEPTION_SPEC "Has Exception Spec"
00095 #define KEY_EXCEPTION_SPEC_LS "Exception Spec List Size"
00096 #define KEY_EXCEPTION_SPEC_LI "Exception Spec List Item"
00097 #define KEY_DERIVED_VIRT_LS "Dervied Virtuals List Size"
00098 #define KEY_DERIVED_VIRT_LI "Derived Virtuals List Item"
00099 #define KEY_EXTERNAL_LINKAGE "External Linkage"
00100 #define KEY_EXCEPTIONS_ENABLED "Exceptions Enabled"
00101
00102 #define KEY_PROCESSED_IMPLEMENTATION "Processed Implementation"
00103 #define KEY_SOURCE_LINE_NUMBER "Source Line Number"
00104 #define KEY_SOURCE_FILE_NAME "Source File Name"
00105 #define KEY_TRY_BLOCKS_LS "Try Blocks List Size"
00106 #define KEY_CATCH_BLOCKS_LS "Catch Blocks List Size"
00107
00108
00109
00110
00111 #endif