1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3 
4 #include "nimbase.h"
5 #undef LANGUAGE_C
6 #undef MIPSEB
7 #undef MIPSEL
8 #undef PPC
9 #undef R3000
10 #undef R4000
11 #undef i386
12 #undef linux
13 #undef mips
14 #undef near
15 #undef far
16 #undef powerpc
17 #undef unix
18 #define nimfr_(x, y)
19 #define nimln_(x, y)
20 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
21 typedef struct tyTuple__POdQNEM9bqRXZxVjuyaP2MQ tyTuple__POdQNEM9bqRXZxVjuyaP2MQ;
22 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
23 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
24 typedef struct RootObj RootObj;
25 typedef struct TNimType TNimType;
26 typedef struct TNimNode TNimNode;
27 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
28 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
29 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
30 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
31 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
32 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
33 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
34 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
35 typedef struct NimStringDesc NimStringDesc;
36 typedef struct TGenericSeq TGenericSeq;
37 typedef struct tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug;
38 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
39 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
40 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
41 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
42 struct TNimType {
43 NI size;
44 NI align;
45 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
46 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
47 TNimType* base;
48 TNimNode* node;
49 void* finalizer;
50 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
51 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
52 };
53 struct RootObj {
54 TNimType* m_type;
55 };
56 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
57 NI32 module;
58 NI32 item;
59 };
60 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
61   RootObj Sup;
62 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
63 };
64 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
65 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
66 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
67 NU16 line;
68 NI16 col;
69 NI32 fileIndex;
70 };
71 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
72 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
73 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
74 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
75 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
76 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
77 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
78 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
79 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
80 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
81 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
82 };
83 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
84   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
85 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
86 union{
87 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
88 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
89 } _kind_1;
90 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
91 NI bitsize;
92 NI alignment;
93 } _kind_2;
94 };
95 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
96 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
97 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
98 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
99 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
100 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
101 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
102 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
103 NI position;
104 NI offset;
105 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
106 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
107 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
108 };
109 struct TGenericSeq {
110 NI len;
111 NI reserved;
112 };
113 struct NimStringDesc {
114   TGenericSeq Sup;
115 NIM_CHAR data[SEQ_DECL_SIZE];
116 };
117 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
118 NI id;
119 NimStringDesc* s;
120 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
121 NI h;
122 };
123 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__RcJNn9bSvWdJgUmA1O6sbHA) (tyObject_TContext__C9bB2okDBl3OKGUBiY5k5Ug* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
124 struct tyTuple__POdQNEM9bqRXZxVjuyaP2MQ {
125 NimStringDesc* Field0;
126 NimStringDesc* Field1;
127 NimStringDesc* Field2;
128 tyProc__RcJNn9bSvWdJgUmA1O6sbHA Field3;
129 };
130 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
131 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, skipGenericOwner__ast_4658)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
N_NIMCALL(NIM_BOOL,pluginMatches__pluginsupport_18)132 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, pluginMatches__pluginsupport_18)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, tyTuple__POdQNEM9bqRXZxVjuyaP2MQ* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
133 	NIM_BOOL result;
134 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
135 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* package;
136 {	result = (NIM_BOOL)0;
137 	{
138 		tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T3_;
139 		T3_ = NIM_NIL;
140 		T3_ = getIdent__idents_143(ic, (*p).Field2);
141 		if (!!(((*(*s).name).id == (*T3_).id))) goto LA4_;
142 		result = NIM_FALSE;
143 		goto BeforeRet_;
144 	}
145 	LA4_: ;
146 	module = skipGenericOwner__ast_4658(s);
147 	{
148 		NIM_BOOL T8_;
149 		NIM_BOOL T9_;
150 		tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T12_;
151 		T8_ = (NIM_BOOL)0;
152 		T9_ = (NIM_BOOL)0;
153 		T9_ = (module == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
154 		if (T9_) goto LA10_;
155 		T9_ = !(((*module).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6)));
156 		LA10_: ;
157 		T8_ = T9_;
158 		if (T8_) goto LA11_;
159 		T12_ = NIM_NIL;
160 		T12_ = getIdent__idents_143(ic, (*p).Field1);
161 		T8_ = !(((*(*module).name).id == (*T12_).id));
162 		LA11_: ;
163 		if (!T8_) goto LA13_;
164 		result = NIM_FALSE;
165 		goto BeforeRet_;
166 	}
167 	LA13_: ;
168 	package = (*module).owner;
169 	{
170 		NIM_BOOL T17_;
171 		NIM_BOOL T18_;
172 		tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T21_;
173 		T17_ = (NIM_BOOL)0;
174 		T18_ = (NIM_BOOL)0;
175 		T18_ = (package == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
176 		if (T18_) goto LA19_;
177 		T18_ = !(((*package).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 24)));
178 		LA19_: ;
179 		T17_ = T18_;
180 		if (T17_) goto LA20_;
181 		T21_ = NIM_NIL;
182 		T21_ = getIdent__idents_143(ic, (*p).Field0);
183 		T17_ = !(((*(*package).name).id == (*T21_).id));
184 		LA20_: ;
185 		if (!T17_) goto LA22_;
186 		result = NIM_FALSE;
187 		goto BeforeRet_;
188 	}
189 	LA22_: ;
190 	result = NIM_TRUE;
191 	goto BeforeRet_;
192 	}BeforeRet_: ;
193 	return result;
194 }
195