294 lines
7.6 KiB
C
294 lines
7.6 KiB
C
/* Generated by Nim Compiler v1.9.0 */
|
|
#define NIM_INTBITS 64
|
|
|
|
#include "nimbase.h"
|
|
#undef LANGUAGE_C
|
|
#undef MIPSEB
|
|
#undef MIPSEL
|
|
#undef PPC
|
|
#undef R3000
|
|
#undef R4000
|
|
#undef i386
|
|
#undef linux
|
|
#undef mips
|
|
#undef near
|
|
#undef far
|
|
#undef powerpc
|
|
#undef unix
|
|
#define nimfr_(x, y)
|
|
#define nimln_(x, y)
|
|
typedef struct NimStrPayload NimStrPayload;
|
|
typedef struct NimStringV2 NimStringV2;
|
|
typedef NU8 tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w;
|
|
struct NimStrPayload {
|
|
NI cap;
|
|
NIM_CHAR data[SEQ_DECL_SIZE];
|
|
};
|
|
struct NimStringV2 {
|
|
NI len;
|
|
NimStrPayload* p;
|
|
};
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c);
|
|
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[4+1];
|
|
} TM__xyuxIF9aCxFKzZet1F6nhpA_2 = { 4 | NIM_STRLIT_FLAG, "None" };
|
|
static const NimStringV2 TM__xyuxIF9aCxFKzZet1F6nhpA_3 = {4, (NimStrPayload*)&TM__xyuxIF9aCxFKzZet1F6nhpA_2};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[6+1];
|
|
} TM__xyuxIF9aCxFKzZet1F6nhpA_4 = { 6 | NIM_STRLIT_FLAG, "Abbrev" };
|
|
static const NimStringV2 TM__xyuxIF9aCxFKzZet1F6nhpA_5 = {6, (NimStrPayload*)&TM__xyuxIF9aCxFKzZet1F6nhpA_4};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[6+1];
|
|
} TM__xyuxIF9aCxFKzZet1F6nhpA_6 = { 6 | NIM_STRLIT_FLAG, "Substr" };
|
|
static const NimStringV2 TM__xyuxIF9aCxFKzZet1F6nhpA_7 = {6, (NimStrPayload*)&TM__xyuxIF9aCxFKzZet1F6nhpA_6};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[6+1];
|
|
} TM__xyuxIF9aCxFKzZet1F6nhpA_8 = { 6 | NIM_STRLIT_FLAG, "Prefix" };
|
|
static const NimStringV2 TM__xyuxIF9aCxFKzZet1F6nhpA_9 = {6, (NimStrPayload*)&TM__xyuxIF9aCxFKzZet1F6nhpA_8};
|
|
extern NIM_BOOL nimInErrorMode__system_3994;
|
|
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
|
|
NIM_BOOL* result;
|
|
result = (NIM_BOOL*)0;
|
|
result = (&nimInErrorMode__system_3994);
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w, prefixMatch__prefixmatches_10)(NimStringV2 p, NimStringV2 s) {
|
|
tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w result;
|
|
NI i;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = (tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0;
|
|
{
|
|
if (!(s.len < p.len)) goto LA3_;
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0);
|
|
goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
i = ((NI)0);
|
|
{
|
|
while (1) {
|
|
if (!(i < s.len)) goto LA6 ;
|
|
{
|
|
if (!((NU8)(s.p->data[i]) == (NU8)(95))) goto LA9_;
|
|
i += ((NI)1);
|
|
}
|
|
LA9_: ;
|
|
{
|
|
NIM_BOOL T13_;
|
|
NIM_CHAR T15_;
|
|
NIM_CHAR T16_;
|
|
NI ii;
|
|
NI jj;
|
|
T13_ = (NIM_BOOL)0;
|
|
T13_ = (i < s.len);
|
|
if (!(T13_)) goto LA14_;
|
|
T15_ = (NIM_CHAR)0;
|
|
T15_ = nsuToLowerAsciiChar(s.p->data[i]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T16_ = (NIM_CHAR)0;
|
|
T16_ = nsuToLowerAsciiChar(p.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T13_ = ((NU8)(T15_) == (NU8)(T16_));
|
|
LA14_: ;
|
|
if (!T13_) goto LA17_;
|
|
ii = (NI)(i + ((NI)1));
|
|
jj = ((NI)1);
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T21_;
|
|
T21_ = (NIM_BOOL)0;
|
|
T21_ = (ii < s.len);
|
|
if (!(T21_)) goto LA22_;
|
|
T21_ = (jj < p.len);
|
|
LA22_: ;
|
|
if (!T21_) goto LA20 ;
|
|
{
|
|
if (!((NU8)(p.p->data[jj]) == (NU8)(95))) goto LA25_;
|
|
jj += ((NI)1);
|
|
}
|
|
LA25_: ;
|
|
{
|
|
if (!((NU8)(s.p->data[ii]) == (NU8)(95))) goto LA29_;
|
|
ii += ((NI)1);
|
|
}
|
|
LA29_: ;
|
|
{
|
|
NIM_CHAR T33_;
|
|
NIM_CHAR T34_;
|
|
T33_ = (NIM_CHAR)0;
|
|
T33_ = nsuToLowerAsciiChar(s.p->data[ii]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T34_ = (NIM_CHAR)0;
|
|
T34_ = nsuToLowerAsciiChar(p.p->data[jj]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!!(((NU8)(T33_) == (NU8)(T34_)))) goto LA35_;
|
|
goto LA19;
|
|
}
|
|
LA35_: ;
|
|
ii += ((NI)1);
|
|
jj += ((NI)1);
|
|
} LA20: ;
|
|
} LA19: ;
|
|
{
|
|
if (!(p.len <= jj)) goto LA39_;
|
|
{
|
|
if (!(i == ((NI)0))) goto LA43_;
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)3);
|
|
goto BeforeRet_;
|
|
}
|
|
goto LA41_;
|
|
LA43_: ;
|
|
{
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)2);
|
|
goto BeforeRet_;
|
|
}
|
|
LA41_: ;
|
|
}
|
|
LA39_: ;
|
|
}
|
|
LA17_: ;
|
|
i += ((NI)1);
|
|
} LA6: ;
|
|
}
|
|
{
|
|
NIM_CHAR T48_;
|
|
NIM_CHAR T49_;
|
|
NI j;
|
|
T48_ = (NIM_CHAR)0;
|
|
T48_ = nsuToLowerAsciiChar(s.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T49_ = (NIM_CHAR)0;
|
|
T49_ = nsuToLowerAsciiChar(p.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!((NU8)(T48_) == (NU8)(T49_))) goto LA50_;
|
|
i = ((NI)1);
|
|
j = ((NI)1);
|
|
{
|
|
while (1) {
|
|
if (!(i < s.len)) goto LA53 ;
|
|
{
|
|
NIM_BOOL T56_;
|
|
T56_ = (NIM_BOOL)0;
|
|
T56_ = (i < (NI)(s.len - ((NI)1)));
|
|
if (!(T56_)) goto LA57_;
|
|
T56_ = ((NU8)(s.p->data[i]) == (NU8)(95));
|
|
LA57_: ;
|
|
if (!T56_) goto LA58_;
|
|
{
|
|
NIM_BOOL T62_;
|
|
NIM_CHAR T64_;
|
|
NIM_CHAR T65_;
|
|
T62_ = (NIM_BOOL)0;
|
|
T62_ = (j < p.len);
|
|
if (!(T62_)) goto LA63_;
|
|
T64_ = (NIM_CHAR)0;
|
|
T64_ = nsuToLowerAsciiChar(p.p->data[j]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T65_ = (NIM_CHAR)0;
|
|
T65_ = nsuToLowerAsciiChar(s.p->data[(NI)(i + ((NI)1))]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T62_ = ((NU8)(T64_) == (NU8)(T65_));
|
|
LA63_: ;
|
|
if (!T62_) goto LA66_;
|
|
j += ((NI)1);
|
|
}
|
|
goto LA60_;
|
|
LA66_: ;
|
|
{
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0);
|
|
goto BeforeRet_;
|
|
}
|
|
LA60_: ;
|
|
}
|
|
LA58_: ;
|
|
{
|
|
NIM_BOOL T71_;
|
|
NIM_BOOL T72_;
|
|
T71_ = (NIM_BOOL)0;
|
|
T72_ = (NIM_BOOL)0;
|
|
T72_ = (i < s.len);
|
|
if (!(T72_)) goto LA73_;
|
|
T72_ = (((NU8)(s.p->data[i])) >= ((NU8)(65)) && ((NU8)(s.p->data[i])) <= ((NU8)(90)));
|
|
LA73_: ;
|
|
T71_ = T72_;
|
|
if (!(T71_)) goto LA74_;
|
|
T71_ = !((((NU8)(s.p->data[(NI)(i - ((NI)1))])) >= ((NU8)(65)) && ((NU8)(s.p->data[(NI)(i - ((NI)1))])) <= ((NU8)(90))));
|
|
LA74_: ;
|
|
if (!T71_) goto LA75_;
|
|
{
|
|
NIM_BOOL T79_;
|
|
NIM_CHAR T81_;
|
|
NIM_CHAR T82_;
|
|
T79_ = (NIM_BOOL)0;
|
|
T79_ = (j < p.len);
|
|
if (!(T79_)) goto LA80_;
|
|
T81_ = (NIM_CHAR)0;
|
|
T81_ = nsuToLowerAsciiChar(p.p->data[j]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T82_ = (NIM_CHAR)0;
|
|
T82_ = nsuToLowerAsciiChar(s.p->data[i]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T79_ = ((NU8)(T81_) == (NU8)(T82_));
|
|
LA80_: ;
|
|
if (!T79_) goto LA83_;
|
|
j += ((NI)1);
|
|
}
|
|
goto LA77_;
|
|
LA83_: ;
|
|
{
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0);
|
|
goto BeforeRet_;
|
|
}
|
|
LA77_: ;
|
|
}
|
|
LA75_: ;
|
|
i += ((NI)1);
|
|
} LA53: ;
|
|
}
|
|
{
|
|
if (!(p.len <= j)) goto LA88_;
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)1);
|
|
goto BeforeRet_;
|
|
}
|
|
goto LA86_;
|
|
LA88_: ;
|
|
{
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0);
|
|
goto BeforeRet_;
|
|
}
|
|
LA86_: ;
|
|
}
|
|
LA50_: ;
|
|
result = ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0);
|
|
goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___prefixmatches_7)(tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w e) {
|
|
NimStringV2 result;
|
|
result.len = 0; result.p = NIM_NIL;
|
|
switch (e) {
|
|
case ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)0):
|
|
{
|
|
result = TM__xyuxIF9aCxFKzZet1F6nhpA_3;
|
|
}
|
|
break;
|
|
case ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)1):
|
|
{
|
|
result = TM__xyuxIF9aCxFKzZet1F6nhpA_5;
|
|
}
|
|
break;
|
|
case ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)2):
|
|
{
|
|
result = TM__xyuxIF9aCxFKzZet1F6nhpA_7;
|
|
}
|
|
break;
|
|
case ((tyEnum_PrefixMatch__pLG39bnDOrZac0FzWXgLG0w)3):
|
|
{
|
|
result = TM__xyuxIF9aCxFKzZet1F6nhpA_9;
|
|
}
|
|
break;
|
|
}
|
|
return result;
|
|
}
|