1 static void* _c0;
2 static void* _c1;
3 static void* _c2;
4 static void* _c3;
5 static void* _c4;
6 static void* _c5;
7 static void* _c6;
8 static void* _c7;
9 static void* _c8;
10 static void* _c9;
11 static void* _c10;
12 static void* _c11;
13 static void* _c12;
14 #include <OOC/SymbolTable.oh>
15 #include <Exception.oh>
16 #include <Strings.oh>
17 #include <URI/Parser.oh>
18 #include <URI/Scheme/File.oh>
19 static OOC_SymbolTable__Position OOC_SymbolTable__importPosition;
20 static OOC_SymbolTable__TypeClosure OOC_SymbolTable__emptyClosure;
21 static OOC_SymbolTable__Name OOC_SymbolTable__predefName;
22 typeof(OOC_SymbolTable__predefIdToType) OOC_SymbolTable__predefIdToType;
23 static URI__HierarchicalURI OOC_SymbolTable__emptyBaseURI;
24 static void OOC_SymbolTable__WriteType(ADT_Storable__Writer w, OOC_SymbolTable__Type type, OOC_SymbolTable__Type srcCodeType);
25 static void OOC_SymbolTable__ReadType(ADT_Storable__Reader r, OOC_SymbolTable__Type *type, OOC_SymbolTable__Type *srcCodeType);
26 static void OOC_SymbolTable__WriteItemList(ADT_Storable__Writer w, OOC_SymbolTable__Item item);
27 static void OOC_SymbolTable__ReadItemList(ADT_Storable__Reader r, OOC_SymbolTable__Item *list, OOC_SymbolTable__Item *last);
28 static OOC_CHAR8 OOC_SymbolTable__ExportTypePosition(OOC_SymbolTable__Type type);
29 static void OOC_SymbolTable__InitLinkDirective(OOC_SymbolTable__LinkDirective l);
30 static Object__String OOC_SymbolTable__ReadString8(ADT_Storable__Reader r);
31 static OOC_SymbolTable__LinkFile OOC_SymbolTable__NewLinkFile(URI__HierarchicalURI file, Object__String prefixOption, Object__String suffixOption);
32 static OOC_SymbolTable__LinkLib OOC_SymbolTable__NewLinkLib(Object__String libraryName, Object__StringArrayPtr dependencies, Object__String prefixOption, Object__String suffixOption, OOC_INT32 type);
33 static void OOC_SymbolTable__AddLinkDirective(OOC_SymbolTable__LinkDirective *list, OOC_SymbolTable__LinkDirective l);
34 static void OOC_SymbolTable__StoreTypeRef(ADT_Storable__Writer w, struct OOC_SymbolTable__TypeRef *typeRef, RT0__Struct typeRef__tag);
35 static void OOC_SymbolTable__LoadTypeRef(ADT_Storable__Reader r, struct OOC_SymbolTable__TypeRef *typeRef, RT0__Struct typeRef__tag);
36 static void OOC_SymbolTable__InitTypeClosure(OOC_SymbolTable__TypeClosure tc, OOC_SymbolTable__Position position, OOC_SymbolTable__Type baseType, OOC_SymbolTable__TypeVarArray params, OOC_SymbolTable__TypeRefArray arguments);
37 static void OOC_SymbolTable__Init(void);
38 
39 /* run-time meta data */
40 static RT0__ModuleDesc _mid;
41 RT0__StructDesc _td_OOC_SymbolTable__Position = { (RT0__Struct[]){&_td_OOC_SymbolTable__PositionDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Position", 8, -1, 0, RT0__strPointer };
42 RT0__StructDesc _td_OOC_SymbolTable__PositionDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__PositionDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__PositionDesc_Store,(void*)OOC_SymbolTable__PositionDesc_Load}, NULL, &_mid, (OOC_CHAR8*)"PositionDesc", 12, 3, (1<<RT0__flagAtomic), RT0__strRecord };
43 RT0__StructDesc _td_OOC_SymbolTable__Name = { (RT0__Struct[]){&_td_OOC_SymbolTable__NameDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Name", 8, -1, 0, RT0__strPointer };
44 RT0__StructDesc _td_OOC_SymbolTable__NameDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__PositionDesc,&_td_OOC_SymbolTable__NameDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__NameDesc_Store,(void*)OOC_SymbolTable__NameDesc_Load}, NULL, &_mid, (OOC_CHAR8*)"NameDesc", 24, 4, 0, RT0__strRecord };
45 RT0__StructDesc _td_OOC_SymbolTable__Flag = { (RT0__Struct[]){&_td_OOC_SymbolTable__FlagDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Flag", 8, -1, 0, RT0__strPointer };
46 RT0__StructDesc _td_OOC_SymbolTable__FlagDesc = { (RT0__Struct[]){&_td_OOC_SymbolTable__FlagDesc}, (void*[]){}, NULL, &_mid, (OOC_CHAR8*)"FlagDesc", 24, 0, 0, RT0__strRecord };
47 RT0__StructDesc _td_OOC_SymbolTable__Item = { (RT0__Struct[]){&_td_OOC_SymbolTable__ItemDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Item", 8, -1, 0, RT0__strPointer };
48 RT0__StructDesc _td_OOC_SymbolTable__ItemDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ItemDesc_Store,(void*)OOC_SymbolTable__ItemDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace}, NULL, &_mid, (OOC_CHAR8*)"ItemDesc", 40, 3, 0, RT0__strRecord };
49 RT0__StructDesc _td_OOC_SymbolTable__Declaration = { (RT0__Struct[]){&_td_OOC_SymbolTable__DeclarationDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Declaration", 8, -1, 0, RT0__strPointer };
50 RT0__StructDesc _td_OOC_SymbolTable__DeclarationDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__DeclarationDesc_Store,(void*)OOC_SymbolTable__DeclarationDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace}, NULL, &_mid, (OOC_CHAR8*)"DeclarationDesc", 88, 4, 0, RT0__strRecord };
51 RT0__StructDesc _td_OOC_SymbolTable__9410 = { (RT0__Struct[]){&_td_OOC_SymbolTable__Declaration}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
52 RT0__StructDesc _td_OOC_SymbolTable__DeclarationArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__9410}, NULL, NULL, &_mid, (OOC_CHAR8*)"DeclarationArray", 8, -1, 0, RT0__strPointer };
53 RT0__StructDesc _td_OOC_SymbolTable__Namespace = { (RT0__Struct[]){&_td_OOC_SymbolTable__NamespaceDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Namespace", 8, -1, 0, RT0__strPointer };
54 RT0__StructDesc _td_OOC_SymbolTable__NamespaceDesc = { (RT0__Struct[]){&_td_OOC_SymbolTable__NamespaceDesc}, (void*[]){(void*)OOC_SymbolTable__NamespaceDesc_IdentifyLocal2,(void*)OOC_SymbolTable__NamespaceDesc_IdentifyLocal,(void*)OOC_SymbolTable__NamespaceDesc_Identify2,(void*)OOC_SymbolTable__NamespaceDesc_Identify,(void*)OOC_SymbolTable__NamespaceDesc_GetSuperProcByIndex}, NULL, &_mid, (OOC_CHAR8*)"NamespaceDesc", 0, 0, (1<<RT0__flagAtomic), RT0__strRecord };
55 RT0__StructDesc _td_OOC_SymbolTable__TypePars = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeParsDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypePars", 8, -1, 0, RT0__strPointer };
56 RT0__StructDesc _td_OOC_SymbolTable__TypeVar = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeVarDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeVar", 8, -1, 0, RT0__strPointer };
57 RT0__StructDesc _td_OOC_SymbolTable__10134 = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeVar}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
58 RT0__StructDesc _td_OOC_SymbolTable__TypeVarArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__10134}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeVarArray", 8, -1, 0, RT0__strPointer };
59 RT0__StructDesc _td_OOC_SymbolTable__TypeParsDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeParsDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeParsDesc_Store,(void*)OOC_SymbolTable__TypeParsDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__TypeParsDesc_Namespace,(void*)OOC_SymbolTable__TypeParsDesc_SetNamespace}, NULL, &_mid, (OOC_CHAR8*)"TypeParsDesc", 56, 4, 0, RT0__strRecord };
60 RT0__StructDesc _td_OOC_SymbolTable__Type = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Type", 8, -1, 0, RT0__strPointer };
61 RT0__StructDesc _td_OOC_SymbolTable__TypeDecl = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeDeclDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeDecl", 8, -1, 0, RT0__strPointer };
62 RT0__StructDesc _td_OOC_SymbolTable__TypeDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeDesc_Store,(void*)OOC_SymbolTable__TypeDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure}, NULL, &_mid, (OOC_CHAR8*)"TypeDesc", 72, 4, 0, RT0__strRecord };
63 RT0__StructDesc _td_OOC_SymbolTable__LinkDirective = { (RT0__Struct[]){&_td_OOC_SymbolTable__LinkDirectiveDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"LinkDirective", 8, -1, 0, RT0__strPointer };
64 RT0__StructDesc _td_OOC_SymbolTable__LinkDirectiveDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__LinkDirectiveDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__LinkDirectiveDesc_Store,(void*)OOC_SymbolTable__LinkDirectiveDesc_Load}, NULL, &_mid, (OOC_CHAR8*)"LinkDirectiveDesc", 8, 3, 0, RT0__strRecord };
65 RT0__StructDesc _td_OOC_SymbolTable__LinkFile = { (RT0__Struct[]){&_td_OOC_SymbolTable__LinkFileDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"LinkFile", 8, -1, 0, RT0__strPointer };
66 RT0__StructDesc _td_OOC_SymbolTable__LinkFileDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__LinkDirectiveDesc,&_td_OOC_SymbolTable__LinkFileDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__LinkFileDesc_Store,(void*)OOC_SymbolTable__LinkFileDesc_Load}, NULL, &_mid, (OOC_CHAR8*)"LinkFileDesc", 32, 4, 0, RT0__strRecord };
67 RT0__StructDesc _td_OOC_SymbolTable__LinkLib = { (RT0__Struct[]){&_td_OOC_SymbolTable__LinkLibDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"LinkLib", 8, -1, 0, RT0__strPointer };
68 RT0__StructDesc _td_OOC_SymbolTable__LinkLibDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__LinkDirectiveDesc,&_td_OOC_SymbolTable__LinkLibDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__LinkLibDesc_Store,(void*)OOC_SymbolTable__LinkLibDesc_Load}, NULL, &_mid, (OOC_CHAR8*)"LinkLibDesc", 48, 4, 0, RT0__strRecord };
69 RT0__StructDesc _td_OOC_SymbolTable__Module = { (RT0__Struct[]){&_td_OOC_SymbolTable__ModuleDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Module", 8, -1, 0, RT0__strPointer };
70 RT0__StructDesc _td_OOC_SymbolTable__ModuleRef = { (RT0__Struct[]){&_td_OOC_SymbolTable__ModuleRefDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"ModuleRef", 8, -1, 0, RT0__strPointer };
71 RT0__StructDesc _td_OOC_SymbolTable__ModuleRefDesc = { (RT0__Struct[]){&_td_OOC_SymbolTable__ModuleRefDesc}, (void*[]){}, NULL, &_mid, (OOC_CHAR8*)"ModuleRefDesc", 16, 0, 0, RT0__strRecord };
72 RT0__StructDesc _td_OOC_SymbolTable__17871 = { (RT0__Struct[]){&_td_OOC_SymbolTable__ModuleRef}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
73 RT0__StructDesc _td_OOC_SymbolTable__ModuleRefArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__17871}, NULL, NULL, &_mid, (OOC_CHAR8*)"ModuleRefArray", 8, -1, 0, RT0__strPointer };
74 RT0__StructDesc _td_OOC_SymbolTable__ProcDecl = { (RT0__Struct[]){&_td_OOC_SymbolTable__ProcDeclDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"ProcDecl", 8, -1, 0, RT0__strPointer };
75 RT0__StructDesc _td_OOC_SymbolTable__ModuleDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__ModuleDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ModuleDesc_Store,(void*)OOC_SymbolTable__ModuleDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ModuleDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__ModuleDesc_SetNamespace,(void*)OOC_SymbolTable__ModuleDesc_SetLibraryName,(void*)OOC_SymbolTable__ModuleDesc_ClassToString,(void*)OOC_SymbolTable__ModuleDesc_CallConvToString,(void*)OOC_SymbolTable__ModuleDesc_AddLinkFile,(void*)OOC_SymbolTable__ModuleDesc_AddLinkLib,(void*)OOC_SymbolTable__ModuleDesc_NoObjectFile,(void*)OOC_SymbolTable__ModuleDesc_GetExternalSource}, NULL, &_mid, (OOC_CHAR8*)"ModuleDesc", 160, 5, 0, RT0__strRecord };
76 RT0__StructDesc _td_OOC_SymbolTable__Import = { (RT0__Struct[]){&_td_OOC_SymbolTable__ImportDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Import", 8, -1, 0, RT0__strPointer };
77 RT0__StructDesc _td_OOC_SymbolTable__ImportDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__ImportDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ImportDesc_Store,(void*)OOC_SymbolTable__ImportDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__ImportDesc_SetExternalSymTab,(void*)OOC_SymbolTable__ImportDesc_IsInternalImport}, NULL, &_mid, (OOC_CHAR8*)"ImportDesc", 112, 5, 0, RT0__strRecord };
78 RT0__StructDesc _td_OOC_SymbolTable__PredefType = { (RT0__Struct[]){&_td_OOC_SymbolTable__PredefTypeDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"PredefType", 8, -1, 0, RT0__strPointer };
79 RT0__StructDesc _td_OOC_SymbolTable__PredefTypeDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__PredefTypeDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__PredefTypeDesc_Store,(void*)OOC_SymbolTable__PredefTypeDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure}, NULL, &_mid, (OOC_CHAR8*)"PredefTypeDesc", 80, 5, 0, RT0__strRecord };
80 RT0__StructDesc _td_OOC_SymbolTable__TypeName = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeNameDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeName", 8, -1, 0, RT0__strPointer };
81 RT0__StructDesc _td_OOC_SymbolTable__TypeNameDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__TypeNameDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeNameDesc_Store,(void*)OOC_SymbolTable__TypeNameDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure,(void*)OOC_SymbolTable__TypeNameDesc_IsPredefReference,(void*)OOC_SymbolTable__TypeNameDesc_MarkAsPredefReference,(void*)OOC_SymbolTable__TypeNameDesc_GetImport}, NULL, &_mid, (OOC_CHAR8*)"TypeNameDesc", 88, 5, 0, RT0__strRecord };
82 RT0__StructDesc _td_OOC_SymbolTable__Pointer = { (RT0__Struct[]){&_td_OOC_SymbolTable__PointerDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Pointer", 8, -1, 0, RT0__strPointer };
83 RT0__StructDesc _td_OOC_SymbolTable__PointerDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__PointerDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__PointerDesc_Store,(void*)OOC_SymbolTable__PointerDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure}, NULL, &_mid, (OOC_CHAR8*)"PointerDesc", 96, 5, 0, RT0__strRecord };
84 RT0__StructDesc _td_OOC_SymbolTable__ExceptionName = { (RT0__Struct[]){&_td_OOC_SymbolTable__ExceptionNameDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"ExceptionName", 8, -1, 0, RT0__strPointer };
85 RT0__StructDesc _td_OOC_SymbolTable__23512 = { (RT0__Struct[]){&_td_OOC_SymbolTable__ExceptionName}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
86 RT0__StructDesc _td_OOC_SymbolTable__ExceptionNameArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__23512}, NULL, NULL, &_mid, (OOC_CHAR8*)"ExceptionNameArray", 8, -1, 0, RT0__strPointer };
87 RT0__StructDesc _td_OOC_SymbolTable__ExceptionNameDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__ExceptionNameDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ExceptionNameDesc_Store,(void*)OOC_SymbolTable__ExceptionNameDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace}, NULL, &_mid, (OOC_CHAR8*)"ExceptionNameDesc", 56, 4, 0, RT0__strRecord };
88 RT0__StructDesc _td_OOC_SymbolTable__VarDecl = { (RT0__Struct[]){&_td_OOC_SymbolTable__VarDeclDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"VarDecl", 8, -1, 0, RT0__strPointer };
89 RT0__StructDesc _td_OOC_SymbolTable__24130 = { (RT0__Struct[]){&_td_OOC_SymbolTable__VarDecl}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
90 RT0__StructDesc _td_OOC_SymbolTable__VarDeclArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__24130}, NULL, NULL, &_mid, (OOC_CHAR8*)"VarDeclArray", 8, -1, 0, RT0__strPointer };
91 RT0__StructDesc _td_OOC_SymbolTable__FormalPars = { (RT0__Struct[]){&_td_OOC_SymbolTable__FormalParsDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"FormalPars", 8, -1, 0, RT0__strPointer };
92 RT0__StructDesc _td_OOC_SymbolTable__FormalParsDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__FormalParsDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__FormalParsDesc_Store,(void*)OOC_SymbolTable__FormalParsDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__FormalParsDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure,(void*)OOC_SymbolTable__FormalParsDesc_EnableRestParameters,(void*)OOC_SymbolTable__FormalParsDesc_SetResultType,(void*)OOC_SymbolTable__FormalParsDesc_SetNamespace}, NULL, &_mid, (OOC_CHAR8*)"FormalParsDesc", 128, 5, 0, RT0__strRecord };
93 RT0__StructDesc _td_OOC_SymbolTable__Array = { (RT0__Struct[]){&_td_OOC_SymbolTable__ArrayDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Array", 8, -1, 0, RT0__strPointer };
94 RT0__StructDesc _td_OOC_SymbolTable__ArrayDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__ArrayDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ArrayDesc_Store,(void*)OOC_SymbolTable__ArrayDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure,(void*)OOC_SymbolTable__ArrayDesc_SetLength,(void*)OOC_SymbolTable__ArrayDesc_GetOpenDimensions,(void*)OOC_SymbolTable__ArrayDesc_GetNonOpenElementType,(void*)OOC_SymbolTable__ArrayDesc_GetInnermostElementType,(void*)OOC_SymbolTable__ArrayDesc_GetNthElementType}, NULL, &_mid, (OOC_CHAR8*)"ArrayDesc", 120, 5, 0, RT0__strRecord };
95 RT0__StructDesc _td_OOC_SymbolTable__Record = { (RT0__Struct[]){&_td_OOC_SymbolTable__RecordDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Record", 8, -1, 0, RT0__strPointer };
96 RT0__StructDesc _td_OOC_SymbolTable__RecordDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__RecordDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__RecordDesc_Store,(void*)OOC_SymbolTable__RecordDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__RecordDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure,(void*)OOC_SymbolTable__RecordDesc_SetNamespace,(void*)OOC_SymbolTable__RecordDesc_AssignTBProcIndex,(void*)OOC_SymbolTable__RecordDesc_ExtensionLevel}, NULL, &_mid, (OOC_CHAR8*)"RecordDesc", 120, 5, 0, RT0__strRecord };
97 RT0__StructDesc _td_OOC_SymbolTable__TypeVarDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__TypeVarDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeVarDesc_Store,(void*)OOC_SymbolTable__TypeVarDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeDesc_Deparam,(void*)OOC_SymbolTable__TypeVarDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure,(void*)OOC_SymbolTable__TypeVarDesc_SetParameterIndex}, NULL, &_mid, (OOC_CHAR8*)"TypeVarDesc", 96, 5, 0, RT0__strRecord };
98 RT0__StructDesc _td_OOC_SymbolTable__QualType = { (RT0__Struct[]){&_td_OOC_SymbolTable__QualTypeDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"QualType", 8, -1, 0, RT0__strPointer };
99 RT0__StructDesc _td_OOC_SymbolTable__TypeRef = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeRef}, (void*[]){}, NULL, &_mid, (OOC_CHAR8*)"TypeRef", 16, 0, 0, RT0__strRecord };
100 RT0__StructDesc _td_OOC_SymbolTable__34170 = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeRef}, NULL, NULL, &_mid, NULL, 16, 1, 0, RT0__strOpenArray };
101 RT0__StructDesc _td_OOC_SymbolTable__TypeRefArray = { (RT0__Struct[]){&_td_OOC_SymbolTable__34170}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeRefArray", 8, -1, 0, RT0__strPointer };
102 RT0__StructDesc _td_OOC_SymbolTable__QualTypeDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__QualTypeDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__QualTypeDesc_Store,(void*)OOC_SymbolTable__QualTypeDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__QualTypeDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__QualTypeDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeDesc_Closure}, NULL, &_mid, (OOC_CHAR8*)"QualTypeDesc", 96, 5, 0, RT0__strRecord };
103 RT0__StructDesc _td_OOC_SymbolTable__TypeClosure = { (RT0__Struct[]){&_td_OOC_SymbolTable__TypeClosureDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"TypeClosure", 8, -1, 0, RT0__strPointer };
104 RT0__StructDesc _td_OOC_SymbolTable__TypeClosureDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__TypeDesc,&_td_OOC_SymbolTable__TypeClosureDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeDesc_Store,(void*)OOC_SymbolTable__TypeDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__TypeDesc_PreciousTypePars,(void*)OOC_SymbolTable__TypeDesc_IsCheckedException,(void*)OOC_SymbolTable__TypeDesc_SetNamingDecl,(void*)OOC_SymbolTable__TypeDesc_SetTypePars,(void*)OOC_SymbolTable__TypeDesc_SetSize,(void*)OOC_SymbolTable__TypeDesc_ArrayDimensions,(void*)OOC_SymbolTable__TypeClosureDesc_Deparam,(void*)OOC_SymbolTable__TypeDesc_Bound,(void*)OOC_SymbolTable__TypeClosureDesc_Closure,(void*)OOC_SymbolTable__TypeClosureDesc_Lookup,(void*)OOC_SymbolTable__TypeClosureDesc_ArgumentsInduced}, NULL, &_mid, (OOC_CHAR8*)"TypeClosureDesc", 96, 5, 0, RT0__strRecord };
105 RT0__StructDesc _td_OOC_SymbolTable__ProcDeclDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__ProcDeclDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ProcDeclDesc_Store,(void*)OOC_SymbolTable__ProcDeclDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ProcDeclDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__ProcDeclDesc_SetNamespace,(void*)OOC_SymbolTable__ProcDeclDesc_SetLinkName,(void*)OOC_SymbolTable__ProcDeclDesc_CopyTBProcIndex,(void*)OOC_SymbolTable__ProcDeclDesc_IsTypeBound,(void*)OOC_SymbolTable__ProcDeclDesc_Class,(void*)OOC_SymbolTable__ProcDeclDesc_RegisterForwardDecl,(void*)OOC_SymbolTable__ProcDeclDesc_IsModuleBody}, NULL, &_mid, (OOC_CHAR8*)"ProcDeclDesc", 144, 5, 0, RT0__strRecord };
106 RT0__StructDesc _td_OOC_SymbolTable__PredefProc = { (RT0__Struct[]){&_td_OOC_SymbolTable__PredefProcDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"PredefProc", 8, -1, 0, RT0__strPointer };
107 RT0__StructDesc _td_OOC_SymbolTable__PredefProcDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__PredefProcDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__PredefProcDesc_Store,(void*)OOC_SymbolTable__PredefProcDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace}, NULL, &_mid, (OOC_CHAR8*)"PredefProcDesc", 96, 5, 0, RT0__strRecord };
108 RT0__StructDesc _td_OOC_SymbolTable__ConstDecl = { (RT0__Struct[]){&_td_OOC_SymbolTable__ConstDeclDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"ConstDecl", 8, -1, 0, RT0__strPointer };
109 RT0__StructDesc _td_OOC_SymbolTable__ConstDeclDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__ConstDeclDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__ConstDeclDesc_Store,(void*)OOC_SymbolTable__ConstDeclDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__ConstDeclDesc_SetValueType}, NULL, &_mid, (OOC_CHAR8*)"ConstDeclDesc", 112, 5, 0, RT0__strRecord };
110 RT0__StructDesc _td_OOC_SymbolTable__VarDeclDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__VarDeclDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__VarDeclDesc_Store,(void*)OOC_SymbolTable__VarDeclDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__VarDeclDesc_SetType}, NULL, &_mid, (OOC_CHAR8*)"VarDeclDesc", 120, 5, 0, RT0__strRecord };
111 RT0__StructDesc _td_OOC_SymbolTable__FieldDecl = { (RT0__Struct[]){&_td_OOC_SymbolTable__FieldDeclDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"FieldDecl", 8, -1, 0, RT0__strPointer };
112 RT0__StructDesc _td_OOC_SymbolTable__FieldDeclDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__FieldDeclDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__FieldDeclDesc_Store,(void*)OOC_SymbolTable__FieldDeclDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__FieldDeclDesc_SetOffset}, NULL, &_mid, (OOC_CHAR8*)"FieldDeclDesc", 112, 5, 0, RT0__strRecord };
113 RT0__StructDesc _td_OOC_SymbolTable__TypeDeclDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__TypeDeclDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__TypeDeclDesc_Store,(void*)OOC_SymbolTable__TypeDeclDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace,(void*)OOC_SymbolTable__TypeDeclDesc_HasTypeParameters,(void*)OOC_SymbolTable__TypeDeclDesc_IsTypeParameter,(void*)OOC_SymbolTable__TypeDeclDesc_ParametricType}, NULL, &_mid, (OOC_CHAR8*)"TypeDeclDesc", 112, 5, 0, RT0__strRecord };
114 RT0__StructDesc _td_OOC_SymbolTable__Redirect = { (RT0__Struct[]){&_td_OOC_SymbolTable__RedirectDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Redirect", 8, -1, 0, RT0__strPointer };
115 RT0__StructDesc _td_OOC_SymbolTable__RedirectDesc = { (RT0__Struct[]){&_td_RT0__ObjectDesc,&_td_Object__ObjectDesc,&_td_ADT_Storable__ObjectDesc,&_td_OOC_SymbolTable__ItemDesc,&_td_OOC_SymbolTable__DeclarationDesc,&_td_OOC_SymbolTable__RedirectDesc}, (void*[]){(void*)RT0__ObjectDesc_Finalize,(void*)Object__ObjectDesc_ToString,(void*)Object__ObjectDesc_Equals,(void*)Object__ObjectDesc_HashCode,(void*)OOC_SymbolTable__RedirectDesc_Store,(void*)OOC_SymbolTable__RedirectDesc_Load,(void*)OOC_SymbolTable__ItemDesc_Module,(void*)OOC_SymbolTable__ItemDesc_InStandardModule,(void*)OOC_SymbolTable__ItemDesc_Procedure,(void*)OOC_SymbolTable__ItemDesc_AddFlag,(void*)OOC_SymbolTable__ItemDesc_Namespace,(void*)OOC_SymbolTable__DeclarationDesc_Name,(void*)OOC_SymbolTable__DeclarationDesc_IncrUsageCounter,(void*)OOC_SymbolTable__DeclarationDesc_GetId,(void*)OOC_SymbolTable__DeclarationDesc_GetEmbeddedNamespace}, NULL, &_mid, (OOC_CHAR8*)"RedirectDesc", 104, 5, 0, RT0__strRecord };
116 RT0__StructDesc _td_OOC_SymbolTable__44745 = { (RT0__Struct[]){&_td_OOC_SymbolTable__PredefType}, NULL, NULL, &_mid, NULL, 8, 1, 0, RT0__strOpenArray };
117 RT0__StructDesc _td_OOC_SymbolTable__44734 = { (RT0__Struct[]){&_td_OOC_SymbolTable__44745}, NULL, NULL, &_mid, NULL, 8, -1, 0, RT0__strPointer };
118 RT0__StructDesc _td_OOC_SymbolTable__Writer = { (RT0__Struct[]){&_td_OOC_SymbolTable__WriterDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Writer", 8, -1, 0, RT0__strPointer };
119 RT0__StructDesc _td_OOC_SymbolTable__WriterDesc = { (RT0__Struct[]){&_td_IO_BinaryRider__WriterDesc,&_td_ADT_Storable__WriterDesc,&_td_ADT_Object_Storage__WriterDesc,&_td_OOC_SymbolTable__WriterDesc}, (void*[]){(void*)IO_BinaryRider__WriterDesc_SetPos,(void*)IO_BinaryRider__WriterDesc_WriteBytes,(void*)IO_BinaryRider__WriterDesc_WriteOrdered,(void*)IO_BinaryRider__WriterDesc_WriteChar,(void*)IO_BinaryRider__WriterDesc_WriteBool,(void*)IO_BinaryRider__WriterDesc_WriteLChar,(void*)IO_BinaryRider__WriterDesc_WriteString,(void*)IO_BinaryRider__WriterDesc_WriteLString,(void*)IO_BinaryRider__WriterDesc_WriteSInt,(void*)IO_BinaryRider__WriterDesc_WriteInt,(void*)IO_BinaryRider__WriterDesc_WriteLInt,(void*)IO_BinaryRider__WriterDesc_WriteNum,(void*)IO_BinaryRider__WriterDesc_WriteReal,(void*)IO_BinaryRider__WriterDesc_WriteLReal,(void*)IO_BinaryRider__WriterDesc_WriteSet,(void*)IO_BinaryRider__WriterDesc_WriteStr,(void*)IO_BinaryRider__WriterDesc_SetByteOrder,(void*)OOC_SymbolTable__WriterDesc_INIT,(void*)ADT_Object_Storage__WriterDesc_WriteObject,(void*)ADT_Object_Storage__WriterDesc_Disconnect}, NULL, &_mid, (OOC_CHAR8*)"WriterDesc", 312, 3, 0, RT0__strRecord };
120 RT0__StructDesc _td_OOC_SymbolTable__Reader = { (RT0__Struct[]){&_td_OOC_SymbolTable__ReaderDesc}, NULL, NULL, &_mid, (OOC_CHAR8*)"Reader", 8, -1, 0, RT0__strPointer };
121 RT0__StructDesc _td_OOC_SymbolTable__ReaderDesc = { (RT0__Struct[]){&_td_IO_BinaryRider__ReaderDesc,&_td_ADT_Storable__ReaderDesc,&_td_ADT_Object_Storage__ReaderDesc,&_td_OOC_SymbolTable__ReaderDesc}, (void*[]){(void*)IO_BinaryRider__ReaderDesc_SetPos,(void*)IO_BinaryRider__ReaderDesc_ReadBytes,(void*)IO_BinaryRider__ReaderDesc_ReadBytesOrdered,(void*)IO_BinaryRider__ReaderDesc_ReadBool,(void*)IO_BinaryRider__ReaderDesc_ReadChar,(void*)IO_BinaryRider__ReaderDesc_ReadLChar,(void*)IO_BinaryRider__ReaderDesc_ReadString,(void*)IO_BinaryRider__ReaderDesc_ReadLString,(void*)IO_BinaryRider__ReaderDesc_ReadSInt,(void*)IO_BinaryRider__ReaderDesc_ReadInt,(void*)IO_BinaryRider__ReaderDesc_ReadLInt,(void*)IO_BinaryRider__ReaderDesc_ReadNum,(void*)IO_BinaryRider__ReaderDesc_ReadReal,(void*)IO_BinaryRider__ReaderDesc_ReadLReal,(void*)IO_BinaryRider__ReaderDesc_ReadSet,(void*)IO_BinaryRider__ReaderDesc_ReadStr,(void*)IO_BinaryRider__ReaderDesc_SetByteOrder,(void*)OOC_SymbolTable__ReaderDesc_INIT,(void*)ADT_Object_Storage__ReaderDesc_ReadObject,(void*)ADT_Object_Storage__ReaderDesc_Disconnect}, NULL, &_mid, (OOC_CHAR8*)"ReaderDesc", 312, 3, 0, RT0__strRecord };
122 RT0__StructDesc _td_OOC_SymbolTable__64777 = { (RT0__Struct[]){&RT0__char}, NULL, NULL, &_mid, NULL, 1024, 1024, (1<<RT0__flagAtomic), RT0__strArray };
123 static RT0__ModuleDesc _mid = { (OOC_CHAR8*)"OOC:SymbolTable", (RT0__Struct[]) { &_td_OOC_SymbolTable__Position, &_td_OOC_SymbolTable__PositionDesc, &_td_OOC_SymbolTable__Name, &_td_OOC_SymbolTable__NameDesc, &_td_OOC_SymbolTable__Flag, &_td_OOC_SymbolTable__FlagDesc, &_td_OOC_SymbolTable__Item, &_td_OOC_SymbolTable__ItemDesc, &_td_OOC_SymbolTable__Declaration, &_td_OOC_SymbolTable__DeclarationDesc, &_td_OOC_SymbolTable__DeclarationArray, &_td_OOC_SymbolTable__Namespace, &_td_OOC_SymbolTable__NamespaceDesc, &_td_OOC_SymbolTable__TypePars, &_td_OOC_SymbolTable__TypeVar, &_td_OOC_SymbolTable__TypeVarArray, &_td_OOC_SymbolTable__TypeParsDesc, &_td_OOC_SymbolTable__Type, &_td_OOC_SymbolTable__TypeDecl, &_td_OOC_SymbolTable__TypeDesc, &_td_OOC_SymbolTable__LinkDirective, &_td_OOC_SymbolTable__LinkDirectiveDesc, &_td_OOC_SymbolTable__LinkFile, &_td_OOC_SymbolTable__LinkFileDesc, &_td_OOC_SymbolTable__LinkLib, &_td_OOC_SymbolTable__LinkLibDesc, &_td_OOC_SymbolTable__Module, &_td_OOC_SymbolTable__ModuleRef, &_td_OOC_SymbolTable__ModuleRefDesc, &_td_OOC_SymbolTable__ModuleRefArray, &_td_OOC_SymbolTable__ProcDecl, &_td_OOC_SymbolTable__ModuleDesc, &_td_OOC_SymbolTable__Import, &_td_OOC_SymbolTable__ImportDesc, &_td_OOC_SymbolTable__PredefType, &_td_OOC_SymbolTable__PredefTypeDesc, &_td_OOC_SymbolTable__TypeName, &_td_OOC_SymbolTable__TypeNameDesc, &_td_OOC_SymbolTable__Pointer, &_td_OOC_SymbolTable__PointerDesc, &_td_OOC_SymbolTable__ExceptionName, &_td_OOC_SymbolTable__ExceptionNameArray, &_td_OOC_SymbolTable__ExceptionNameDesc, &_td_OOC_SymbolTable__VarDecl, &_td_OOC_SymbolTable__VarDeclArray, &_td_OOC_SymbolTable__FormalPars, &_td_OOC_SymbolTable__FormalParsDesc, &_td_OOC_SymbolTable__Array, &_td_OOC_SymbolTable__ArrayDesc, &_td_OOC_SymbolTable__Record, &_td_OOC_SymbolTable__RecordDesc, &_td_OOC_SymbolTable__TypeVarDesc, &_td_OOC_SymbolTable__QualType, &_td_OOC_SymbolTable__TypeRef, &_td_OOC_SymbolTable__TypeRefArray, &_td_OOC_SymbolTable__QualTypeDesc, &_td_OOC_SymbolTable__TypeClosure, &_td_OOC_SymbolTable__TypeClosureDesc, &_td_OOC_SymbolTable__ProcDeclDesc, &_td_OOC_SymbolTable__PredefProc, &_td_OOC_SymbolTable__PredefProcDesc, &_td_OOC_SymbolTable__ConstDecl, &_td_OOC_SymbolTable__ConstDeclDesc, &_td_OOC_SymbolTable__VarDeclDesc, &_td_OOC_SymbolTable__FieldDecl, &_td_OOC_SymbolTable__FieldDeclDesc, &_td_OOC_SymbolTable__TypeDeclDesc, &_td_OOC_SymbolTable__Redirect, &_td_OOC_SymbolTable__RedirectDesc, &_td_OOC_SymbolTable__Writer, &_td_OOC_SymbolTable__WriterDesc, &_td_OOC_SymbolTable__Reader, &_td_OOC_SymbolTable__ReaderDesc, NULL }, 0 };
124 
OOC_OOC_SymbolTable_open(RT0__Module client)125 extern void OOC_OOC_SymbolTable_open(RT0__Module client) {
126   if (_mid.openCount == 0) {
127     OOC_Object_open(&_mid);
128     OOC_Object_Boxed_open(&_mid);
129     OOC_Exception_open(&_mid);
130     OOC_Strings_open(&_mid);
131     OOC_ADT_Dictionary_AddressKey_open(&_mid);
132     OOC_ADT_Dictionary_open(&_mid);
133     OOC_ADT_Storable_open(&_mid);
134     OOC_ADT_ArrayList_open(&_mid);
135     OOC_ADT_Object_Storage_open(&_mid);
136     OOC_IO_open(&_mid);
137     OOC_URI_open(&_mid);
138     OOC_URI_Parser_open(&_mid);
139     OOC_URI_Scheme_File_open(&_mid);
140     OOC_OOC_Scanner_InputBuffer_open(&_mid);
141     OOC_OOC_Scanner_SymList_open(&_mid);
142     OOC_OOC_Doc_open(&_mid);
143     OOC_OOC_AST_open(&_mid);
144     OOC_RT0_open(&_mid);
145     OOC_Object_open(&_mid);
146     OOC_Exception_open(&_mid);
147 
148     RT0__RegisterModule(&_mid);
149     OOC_OOC_SymbolTable_init();
150   }
151   _mid.openCount++;
152 }
OOC_OOC_SymbolTable_close(RT0__Module client)153 extern void OOC_OOC_SymbolTable_close(RT0__Module client) {
154   _mid.openCount--;
155   if (_mid.openCount == 0) {
156     OOC_OOC_SymbolTable_destroy();
157     RT0__UnregisterModule(&_mid);
158 
159     OOC_Object_close(&_mid);
160     OOC_Object_Boxed_close(&_mid);
161     OOC_Exception_close(&_mid);
162     OOC_Strings_close(&_mid);
163     OOC_ADT_Dictionary_AddressKey_close(&_mid);
164     OOC_ADT_Dictionary_close(&_mid);
165     OOC_ADT_Storable_close(&_mid);
166     OOC_ADT_ArrayList_close(&_mid);
167     OOC_ADT_Object_Storage_close(&_mid);
168     OOC_IO_close(&_mid);
169     OOC_URI_close(&_mid);
170     OOC_URI_Parser_close(&_mid);
171     OOC_URI_Scheme_File_close(&_mid);
172     OOC_OOC_Scanner_InputBuffer_close(&_mid);
173     OOC_OOC_Scanner_SymList_close(&_mid);
174     OOC_OOC_Doc_close(&_mid);
175     OOC_OOC_AST_close(&_mid);
176     OOC_RT0_close(&_mid);
177     OOC_Object_close(&_mid);
178     OOC_Exception_close(&_mid);
179   }
180 }
181 
182 /* --- */
183