csources_v2/c_code/11_7/@m..@slib@spure@sstrutils.nim.c
2022-12-16 10:54:01 +08:00

4486 lines
130 KiB
C

/* Generated by Nim Compiler v1.9.0 */
#define NIM_INTBITS 32
#define NIM_EmulateOverflowChecks
#include "nimbase.h"
#include <string.h>
#define _GNU_SOURCE
#include <string.h>
#include <stdio.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 struct tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw;
typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content tySequence__uB9b75OUPRENsBAu4AnoePA_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
struct NimStrPayload {
NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
NI len;
NimStrPayload* p;
};
typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
typedef NI tyArray__9cc9aPiDa8VaWjVcFLabEDZQ[256];
struct TNimTypeV2 {
void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {
TNimTypeV2* m_type;
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
NI len; tySequence__uB9b75OUPRENsBAu4AnoePA_Content* p;
};
struct Exception {
RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__uB9b75OUPRENsBAu4AnoePA trace;
Exception* up;
};
struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
Exception Sup;
};
struct tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw {
tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
};
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w;
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
NimStringV2 Field0;
NimStringV2 Field1;
};
typedef NU8 tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
typedef NU8 tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ;
struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
NI a;
NI b;
};
typedef NU8 tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA;
typedef NimStringV2 tyArray__17w6ns39bmjfAZ429aQpCFUA[9];
typedef NU8 tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ;
typedef NIM_CHAR tyArray__9bPFPkkEEeeNM9bKgiV8Q49cg[6];
typedef NIM_CHAR tyArray__Kn8ZOVsorvcNLB4isUeMzQ[2501];
typedef NIM_CHAR tyArray__vB7L5YKNrMfbzoUubCEcYg[3];
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
#ifndef tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
#define tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content { NI cap; tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHexImpl__pureZstrutils_770)(NU64 x, NI len, NIM_BOOL handleNegative);
N_NIMCALL(NimStringV2, mnewString)(NI len);
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s);
N_LIB_PRIVATE N_NIMCALL(void, nimPrepareStrMutationImpl__system_2301)(NimStringV2* s);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(NIM_CHAR, toLowerAscii__stdZprivateZstrimpl_1)(NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_16)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindChar)(NimStringV2 s, NIM_CHAR sub, NI start, NI last);
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7543)(NimStringV2 s, NI first, NI last);
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7555)(NimStringV2 s, NI first);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(void, nsuInitNewSkipTable)(NimStringV2 sub, tyArray__9cc9aPiDa8VaWjVcFLabEDZQ Result);
N_LIB_PRIVATE N_NIMCALL(void, nsuInitSkipTable)(NI* a, NimStringV2 sub);
N_LIB_PRIVATE N_NIMCALL(void, fill__pureZstrutils_1560)(NI* a, NI aLen_0, NI value);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStrA)(tyArray__9cc9aPiDa8VaWjVcFLabEDZQ a, NimStringV2 s, NimStringV2 sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(void, setLengthStrV2)(NimStringV2* s, NI newLen);
N_NIMCALL(NimStringV2, rawNewString)(NI cap);
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringV2* s, NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
N_LIB_PRIVATE N_NOINLINE(void, invalidFormatString__pureZstrutils_2394)(NimStringV2 formatstr);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NI, findNormalized__pureZstrutils_2381)(NimStringV2 x, NimStringV2* inArray, NI inArrayLen_0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a, NimStringV2 b);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_224)(NimStringV2 msg);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringV2 s, NimStringV2 sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringV2 s, NimStringV2 prefix);
N_LIB_PRIVATE N_NIMCALL(NI, parseHex__pureZstrutils_982)(NimStringV2 s, NI* number, NI start, NI maxLen);
static N_INLINE(void, appendChar)(NimStringV2* dest, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringV2 s, NimStringV2 suffix);
static N_INLINE(NI, max__pureZstrutils_1717)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap, NI elemSize, NI elemAlign);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZassertions_19)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(void, add__stdZenumutils_69)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x, NimStringV2 value);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nimIdentNormalize__pureZstrutils_122)(NimStringV2 s);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b);
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindCharSet)(NimStringV2 s, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuContinuesWith)(NimStringV2 s, NimStringV2 substr, NI start);
N_LIB_PRIVATE N_NIMCALL(NI, parseInt__pureZparseutils_832)(NimStringV2 s, NI* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(NI, parseFloat__pureZparseutils_857)(NimStringV2 s, NF* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NI, parseBiggestInt__pureZparseutils_827)(NimStringV2 s, NI64* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuNormalize)(NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(NI, parseBiggestUInt__pureZparseutils_842)(NimStringV2 s, NU64* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, substrEq__pureZstrutils_255)(NimStringV2 s, NI pos, NimStringV2 substr);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHex__pureZstrutils_1991)(NI x, NI len);
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_1279)(NimStringV2 s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZstrbasics_49)(NI a, NI b);
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_1307)(NimStringV2 s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_128)(NI a, NI b);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuUnindent)(NimStringV2 s, NI count, NimStringV2 padding);
N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToUpperAsciiChar)(NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuformatFloat)(NF f, tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ format, NI precision, NIM_CHAR decimalSep);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuformatBiggestFloat)(NF f, tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ format, NI precision, NIM_CHAR decimalSep);
N_LIB_PRIVATE N_NIMCALL(void, trimZeros__pureZstrutils_2178)(NimStringV2* x, NIM_CHAR decimalSep);
N_LIB_PRIVATE N_NIMCALL(void, delete__pureZstrutils_1353)(NimStringV2* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA slice);
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_2 = { 16 | NIM_STRLIT_FLAG, "0123456789ABCDEF" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_3 = {16, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_2};
static const struct {
NI cap; NIM_CHAR data[0+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_4 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_5 = {0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4};
extern TNimTypeV2 NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_;
static const struct {
NI cap; NIM_CHAR data[23+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_6 = { 23 | NIM_STRLIT_FLAG, "invalid format string: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_7 = {23, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_6};
static const struct {
NI cap; NIM_CHAR data[36+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_8 = { 36 | NIM_STRLIT_FLAG, "strutils.nim(2075, 3) `sub.len > 0` " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_9 = {36, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_8};
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_10 = { 28 | NIM_STRLIT_FLAG, "String does not start with: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_11 = {28, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_10};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_12 = { 1 | NIM_STRLIT_FLAG, "\\" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_13 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_12};
static const struct {
NI cap; NIM_CHAR data[24+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_14 = { 24 | NIM_STRLIT_FLAG, "String does not end in: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_15 = {24, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_14};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_16 = {0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_17 = { 1 | NIM_STRLIT_FLAG, "c" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_18 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_17};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_19 = { 3 | NIM_STRLIT_FLAG, "cpp" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_20 = {3, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_19};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_21 = { 2 | NIM_STRLIT_FLAG, "js" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_22 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_21};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_23 = { 4 | NIM_STRLIT_FLAG, "objc" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_24 = {4, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_23};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_25 = {0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4};
static const struct {
NI cap; NIM_CHAR data[21+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_26 = { 21 | NIM_STRLIT_FLAG, "invalid hex integer: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_27 = {21, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_26};
static const struct {
NI cap; NIM_CHAR data[17+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_28 = { 17 | NIM_STRLIT_FLAG, "invalid integer: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_29 = {17, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_28};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_30 = { 12 | NIM_STRLIT_FLAG, "dotoperators" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_31 = {12, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_30};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_32 = { 12 | NIM_STRLIT_FLAG, "calloperator" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_33 = {12, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_32};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_34 = { 8 | NIM_STRLIT_FLAG, "parallel" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_35 = {8, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_34};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_36 = { 10 | NIM_STRLIT_FLAG, "destructor" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_37 = {10, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_36};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_38 = { 6 | NIM_STRLIT_FLAG, "notnil" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_39 = {6, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_38};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_40 = { 14 | NIM_STRLIT_FLAG, "dynamicbindsym" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_41 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_40};
static const struct {
NI cap; NIM_CHAR data[13+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_42 = { 13 | NIM_STRLIT_FLAG, "forloopmacros" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_43 = {13, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_42};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_44 = { 14 | NIM_STRLIT_FLAG, "casestmtmacros" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_45 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_44};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_46 = { 14 | NIM_STRLIT_FLAG, "codereordering" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_47 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_46};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_48 = { 14 | NIM_STRLIT_FLAG, "compiletimeffi" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_49 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_48};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_50 = { 11 | NIM_STRLIT_FLAG, "vmopsdanger" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_51 = {11, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_50};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_52 = { 11 | NIM_STRLIT_FLAG, "strictfuncs" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_53 = {11, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_52};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_54 = { 5 | NIM_STRLIT_FLAG, "views" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_55 = {5, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_54};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_56 = { 12 | NIM_STRLIT_FLAG, "strictnotnil" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_57 = {12, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_56};
static const struct {
NI cap; NIM_CHAR data[17+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_58 = { 17 | NIM_STRLIT_FLAG, "overloadableenums" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_59 = {17, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_58};
static const struct {
NI cap; NIM_CHAR data[13+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_60 = { 13 | NIM_STRLIT_FLAG, "stricteffects" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_61 = {13, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_60};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_62 = { 16 | NIM_STRLIT_FLAG, "unicodeoperators" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_63 = {16, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_62};
static const struct {
NI cap; NIM_CHAR data[22+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_64 = { 22 | NIM_STRLIT_FLAG, "flexibleoptionalparams" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_65 = {22, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_64};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_66 = { 10 | NIM_STRLIT_FLAG, "strictdefs" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_67 = {10, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_66};
static const struct {
NI cap; NIM_CHAR data[17+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_68 = { 17 | NIM_STRLIT_FLAG, "strictcaseobjects" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_69 = {17, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_68};
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_70 = { 20 | NIM_STRLIT_FLAG, "Invalid enum value: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_71 = {20, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_70};
static const struct {
NI cap; NIM_CHAR data[30+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_72 = { 30 | NIM_STRLIT_FLAG, "allowsemcheckedastmodification" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_73 = {30, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_72};
static const struct {
NI cap; NIM_CHAR data[24+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_74 = { 24 | NIM_STRLIT_FLAG, "checkunsignedconversions" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_75 = {24, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_74};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_76 = { 10 | NIM_STRLIT_FLAG, "laxeffects" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_77 = {10, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_76};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_78 = {20, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_70};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_79 = { 15 | NIM_STRLIT_FLAG, "invalid float: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_80 = {15, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_79};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_81 = {17, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_28};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_82 = { 1 | NIM_STRLIT_FLAG, "y" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_83 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_82};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_84 = { 3 | NIM_STRLIT_FLAG, "yes" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_85 = {3, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_84};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_86 = { 4 | NIM_STRLIT_FLAG, "true" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_87 = {4, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_86};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_88 = { 1 | NIM_STRLIT_FLAG, "1" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_89 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_88};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_90 = { 2 | NIM_STRLIT_FLAG, "on" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_91 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_90};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_92 = { 1 | NIM_STRLIT_FLAG, "n" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_93 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_92};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_94 = { 2 | NIM_STRLIT_FLAG, "no" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_95 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_94};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_96 = { 5 | NIM_STRLIT_FLAG, "false" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_97 = {5, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_96};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_98 = { 1 | NIM_STRLIT_FLAG, "0" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_99 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_98};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_100 = { 3 | NIM_STRLIT_FLAG, "off" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_101 = {3, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_100};
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_102 = { 28 | NIM_STRLIT_FLAG, "cannot interpret as a bool: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_103 = {28, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_102};
static const struct {
NI cap; NIM_CHAR data[26+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_104 = { 26 | NIM_STRLIT_FLAG, "invalid unsigned integer: " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_105 = {26, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_104};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_106 = { 10 | NIM_STRLIT_FLAG, "prefername" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_107 = {10, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_106};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_108 = { 10 | NIM_STRLIT_FLAG, "preferdesc" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_109 = {10, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_108};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_110 = { 14 | NIM_STRLIT_FLAG, "preferexported" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_111 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_110};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_112 = { 16 | NIM_STRLIT_FLAG, "prefermoduleinfo" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_113 = {16, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_112};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_114 = { 16 | NIM_STRLIT_FLAG, "prefergenericarg" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_115 = {16, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_114};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_116 = { 14 | NIM_STRLIT_FLAG, "prefertypename" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_117 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_116};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_118 = { 14 | NIM_STRLIT_FLAG, "preferresolved" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_119 = {14, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_118};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_120 = { 11 | NIM_STRLIT_FLAG, "prefermixed" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_121 = {11, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_120};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_122 = {20, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_70};
static const struct {
NI cap; NIM_CHAR data[36+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_123 = { 36 | NIM_STRLIT_FLAG, "strutils.nim(760, 11) `sep.len > 0` " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_124 = {36, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_123};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_125 = { 2 | NIM_STRLIT_FLAG, "\\x" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_126 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_125};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_127 = { 2 | NIM_STRLIT_FLAG, "\\\\" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_128 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_127};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_129 = { 2 | NIM_STRLIT_FLAG, "\\\'" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_130 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_129};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_131 = { 2 | NIM_STRLIT_FLAG, "\\\"" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_132 = {2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_131};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_133 = {0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_134 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_135 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_134};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_136 = { 1 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_137 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_136};
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_138 = {0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_139 = { 1 | NIM_STRLIT_FLAG, "k" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_140 = { 1 | NIM_STRLIT_FLAG, "M" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_141 = { 1 | NIM_STRLIT_FLAG, "G" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_142 = { 1 | NIM_STRLIT_FLAG, "T" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_143 = { 1 | NIM_STRLIT_FLAG, "P" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_144 = { 1 | NIM_STRLIT_FLAG, "E" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_145 = { 1 | NIM_STRLIT_FLAG, "Z" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_146 = { 1 | NIM_STRLIT_FLAG, "Y" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_147 = { 2 | NIM_STRLIT_FLAG, "Ki" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_148 = { 2 | NIM_STRLIT_FLAG, "Mi" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_149 = { 2 | NIM_STRLIT_FLAG, "Gi" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_150 = { 2 | NIM_STRLIT_FLAG, "Ti" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_151 = { 2 | NIM_STRLIT_FLAG, "Pi" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_152 = { 2 | NIM_STRLIT_FLAG, "Ei" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_153 = { 2 | NIM_STRLIT_FLAG, "Zi" };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_154 = { 2 | NIM_STRLIT_FLAG, "Yi" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_155 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_136};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__JGc9b9bh2D3nTdUR7TGyq8aA_156 = { 1 | NIM_STRLIT_FLAG, "B" };
static const NimStringV2 TM__JGc9b9bh2D3nTdUR7TGyq8aA_157 = {1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_156};
N_LIB_PRIVATE NIM_CONST tyArray__17w6ns39bmjfAZ429aQpCFUA collPrefixes__pureZstrutils_2212 = {{0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_139},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_140},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_141},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_142},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_143},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_144},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_145},
{1, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_146}}
;
N_LIB_PRIVATE NIM_CONST tyArray__17w6ns39bmjfAZ429aQpCFUA iecPrefixes__pureZstrutils_2211 = {{0, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_4},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_147},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_148},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_149},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_150},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_151},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_152},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_153},
{2, (NimStrPayload*)&TM__JGc9b9bh2D3nTdUR7TGyq8aA_154}}
;
N_LIB_PRIVATE NIM_CONST tyArray__vB7L5YKNrMfbzoUubCEcYg floatFormatToChar__pureZstrutils_2067 = {103,
102,
101}
;
extern NIM_BOOL nimInErrorMode__system_3980;
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = !(((*s).p == ((NimStrPayload*) NIM_NIL)));
if (!(T3_)) goto LA4_;
T3_ = ((NI)((*(*s).p).cap & ((NI)1073741824)) == ((NI)1073741824));
LA4_: ;
if (!T3_) goto LA5_;
nimPrepareStrMutationImpl__system_2301(s);
}
LA5_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHexImpl__pureZstrutils_770)(NU64 x, NI len, NIM_BOOL handleNegative) {
NimStringV2 result;
NU64 n;
result.len = 0; result.p = NIM_NIL;
n = x;
result = mnewString(((NI) (len)));
{
NI j;
NI colontmp_;
NI res;
j = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(((NI) (len)) - ((NI)1));
res = colontmp_;
{
while (1) {
if (!(((NI)0) <= res)) goto LA3 ;
j = res;
nimPrepareStrMutationV2((&result));
result.p->data[j] = TM__JGc9b9bh2D3nTdUR7TGyq8aA_3.p->data[(NU64)(n & 15ULL)];
n = (NU64)((NU64)(n) >> (NU64)(((NI)4)));
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = (n == 0ULL);
if (!(T6_)) goto LA7_;
T6_ = handleNegative;
LA7_: ;
if (!T6_) goto LA8_;
n = 18446744073709551615ULL;
}
LA8_: ;
res -= ((NI)1);
} LA3: ;
}
}
return result;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
NIM_BOOL* result;
result = (NIM_BOOL*)0;
result = (&nimInErrorMode__system_3980);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHex__pureZstrutils_1991)(NI x, NI len) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = toHexImpl__pureZstrutils_770(((NU64) (x)), len, (x < ((NI)0)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(NIM_CHAR, toLowerAscii__stdZprivateZstrimpl_1)(NIM_CHAR c) {
NIM_CHAR result;
result = (NIM_CHAR)0;
{
if (!(((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(90)))) goto LA3_;
result = ((NIM_CHAR) (((NI) ((NI)(((NU8)(c)) + ((NI)32))))));
}
goto LA1_;
LA3_: ;
{
result = c;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a, NimStringV2 b) {
NI result;
NI aLenX60gensym24_;
NI bLenX60gensym24_;
NI iX60gensym24_;
NI jX60gensym24_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
aLenX60gensym24_ = a.len;
bLenX60gensym24_ = b.len;
iX60gensym24_ = ((NI)0);
jX60gensym24_ = ((NI)0);
{
while (1) {
NIM_CHAR colontmpD_;
NIM_CHAR colontmpD__2;
NIM_CHAR colontmpD__3;
NIM_CHAR colontmpD__4;
NIM_CHAR aaX60gensym24_;
NIM_CHAR bbX60gensym24_;
colontmpD_ = (NIM_CHAR)0;
colontmpD__2 = (NIM_CHAR)0;
colontmpD__3 = (NIM_CHAR)0;
colontmpD__4 = (NIM_CHAR)0;
{
while (1) {
NIM_BOOL T5_;
T5_ = (NIM_BOOL)0;
T5_ = (iX60gensym24_ < aLenX60gensym24_);
if (!(T5_)) goto LA6_;
T5_ = ((NU8)(a.p->data[iX60gensym24_]) == (NU8)(95));
LA6_: ;
if (!T5_) goto LA4 ;
iX60gensym24_ += ((NI)1);
} LA4: ;
}
{
while (1) {
NIM_BOOL T9_;
T9_ = (NIM_BOOL)0;
T9_ = (jX60gensym24_ < bLenX60gensym24_);
if (!(T9_)) goto LA10_;
T9_ = ((NU8)(b.p->data[jX60gensym24_]) == (NU8)(95));
LA10_: ;
if (!T9_) goto LA8 ;
jX60gensym24_ += ((NI)1);
} LA8: ;
}
{
if (!(iX60gensym24_ < aLenX60gensym24_)) goto LA13_;
colontmpD_ = toLowerAscii__stdZprivateZstrimpl_1(a.p->data[iX60gensym24_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
aaX60gensym24_ = colontmpD_;
}
goto LA11_;
LA13_: ;
{
colontmpD__2 = 0;
aaX60gensym24_ = colontmpD__2;
}
LA11_: ;
{
if (!(jX60gensym24_ < bLenX60gensym24_)) goto LA18_;
colontmpD__3 = toLowerAscii__stdZprivateZstrimpl_1(b.p->data[jX60gensym24_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
bbX60gensym24_ = colontmpD__3;
}
goto LA16_;
LA18_: ;
{
colontmpD__4 = 0;
bbX60gensym24_ = colontmpD__4;
}
LA16_: ;
result = (NI)(((NU8)(aaX60gensym24_)) - ((NU8)(bbX60gensym24_)));
{
if (!!((result == ((NI)0)))) goto LA23_;
goto BeforeRet_;
}
LA23_: ;
{
if (!(aLenX60gensym24_ <= iX60gensym24_)) goto LA27_;
{
if (!(bLenX60gensym24_ <= jX60gensym24_)) goto LA31_;
result = ((NI)0);
goto BeforeRet_;
}
LA31_: ;
result = ((NI)-1);
goto BeforeRet_;
}
goto LA25_;
LA27_: ;
{
if (!(bLenX60gensym24_ <= jX60gensym24_)) goto LA34_;
result = ((NI)1);
goto BeforeRet_;
}
goto LA25_;
LA34_: ;
LA25_: ;
iX60gensym24_ += ((NI)1);
jX60gensym24_ += ((NI)1);
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allCharsInSet__pureZstrutils_1495)(NimStringV2 s, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw theSet) {
NIM_BOOL result;
{ result = (NIM_BOOL)0;
{
NIM_CHAR c;
NI i;
NI L;
c = (NIM_CHAR)0;
i = ((NI)0);
L = s.len;
{
while (1) {
if (!(i < L)) goto LA3 ;
c = s.p->data[i];
{
if (!!(((theSet[(NU)((((NU8)(c))))>>3] &(1U<<((NU)((((NU8)(c))))&7U)))!=0))) goto LA6_;
result = NIM_FALSE;
goto BeforeRet_;
}
LA6_: ;
i += ((NI)1);
} LA3: ;
}
}
result = NIM_TRUE;
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) {
NI result;
result = (NI)0;
result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
return result;
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s) {
NCSTRING result;
result = (NCSTRING)0;
{
if (!(s.len == ((NI)0))) goto LA3_;
result = "";
}
goto LA1_;
LA3_: ;
{
result = ((NCSTRING) ((*s.p).data));
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindChar)(NimStringV2 s, NIM_CHAR sub, NI start, NI last) {
NI result;
NI colontmpD_;
NI colontmpD__2;
NI last_2;
NI length;
{ result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
result = ((NI)-1);
{
if (!(last < ((NI)0))) goto LA3_;
colontmpD_ = (s.len-1);
last_2 = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = last;
last_2 = colontmpD__2;
}
LA1_: ;
length = (NI)((NI)(last_2 - ((NI) (start))) + ((NI)1));
{
void* found;
if (!(((NI)0) < length)) goto LA8_;
found = memchr(((void*) ((&s.p->data[start]))), sub, ((size_t) (length)));
{
if (!!((found == 0))) goto LA12_;
result = minuspercent___system_790(((NI) (ptrdiff_t) (found)), ((NI) (nimToCStringConv(s))));
goto BeforeRet_;
}
LA12_: ;
}
LA8_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size) {
nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src) {
{
if (!(((NI)0) < src.len)) goto LA3_;
copyMem__system_1719(((void*) ((&(*(*dest).p).data[(*dest).len]))), ((void*) ((&(*src.p).data[((NI)0)]))), ((NI) ((NI)(src.len + ((NI)1)))));
(*dest).len += src.len;
}
LA3_: ;
}
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimSetMem__systemZmemory_7(p, ((int)0), size);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, nsuInitSkipTable)(NI* a, NimStringV2 sub) {
NI m;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
m = sub.len;
fill__pureZstrutils_1560(a, 256, m);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(m - ((NI)1));
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < colontmp_)) goto LA3 ;
i = i_2;
a[(((NU8)(sub.p->data[i])))- 0] = (NI)((NI)(m - ((NI)1)) - i);
i_2 += ((NI)1);
} LA3: ;
}
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, nsuInitNewSkipTable)(NimStringV2 sub, tyArray__9cc9aPiDa8VaWjVcFLabEDZQ Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nsuInitSkipTable(Result, sub);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStrA)(tyArray__9cc9aPiDa8VaWjVcFLabEDZQ a, NimStringV2 s, NimStringV2 sub, NI start, NI last) {
NI result;
NI colontmpD_;
NI colontmpD__2;
NI last_2;
NI subLast;
NI skip;
{ result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
if (!(last < ((NI)0))) goto LA3_;
colontmpD_ = (s.len-1);
last_2 = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = last;
last_2 = colontmpD__2;
}
LA1_: ;
subLast = (NI)(sub.len - ((NI)1));
{
if (!(subLast == ((NI)-1))) goto LA8_;
result = ((NI) (start));
goto BeforeRet_;
}
LA8_: ;
result = ((NI)-1);
skip = start;
{
while (1) {
NI i;
if (!(subLast <= (NI)(last_2 - ((NI) (skip))))) goto LA11 ;
i = subLast;
{
while (1) {
if (!((NU8)(s.p->data[(NI)(((NI) (skip)) + i)]) == (NU8)(sub.p->data[i]))) goto LA13 ;
{
if (!(i == ((NI)0))) goto LA16_;
result = ((NI) (skip));
goto BeforeRet_;
}
LA16_: ;
i -= ((NI)1);
} LA13: ;
}
skip += a[(((NU8)(s.p->data[(NI)(((NI) (skip)) + subLast)])))- 0];
} LA11: ;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuReplaceStr)(NimStringV2 s, NimStringV2 sub, NimStringV2 by) {
NimStringV2 result;
NI subLen;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = TM__JGc9b9bh2D3nTdUR7TGyq8aA_5;
subLen = sub.len;
{
if (!(subLen == ((NI)0))) goto LA3_;
eqcopy___stdZassertions_16((&result), s);
}
goto LA1_;
LA3_: ;
{
NimStringV2 colontmpD_;
NIM_CHAR c;
NI last;
NI i;
if (!(subLen == ((NI)1))) goto LA6_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
c = sub.p->data[((NI)0)];
last = (s.len-1);
i = ((NI)0);
{
while (1) {
NimStringV2 colontmpD__2;
NI j;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
j = nsuFindChar(s, c, ((NI) (i)), last);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
{
if (!(j < ((NI)0))) goto LA14_;
eqdestroy___stdZassertions_13((&colontmpD__2));
goto LA9;
}
LA14_: ;
colontmpD__2 = substr__system_7543(s, i, (NI)(j - ((NI)1)));
prepareAdd((&result), colontmpD__2.len + 0);
appendString((&result), colontmpD__2);
prepareAdd((&result), by.len + 0);
appendString((&result), by);
i = (NI)(j + subLen);
{
LA11_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
}
} LA9: ;
colontmpD_ = substr__system_7555(s, i);
prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
{
LA8_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA6_: ;
{
NimStringV2 colontmpD__3;
tyArray__9cc9aPiDa8VaWjVcFLabEDZQ a;
NI last_2;
NI i_2;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
nimZeroMem((void*)a, sizeof(tyArray__9cc9aPiDa8VaWjVcFLabEDZQ));
nsuInitNewSkipTable(sub, a);
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
last_2 = (s.len-1);
i_2 = ((NI)0);
{
while (1) {
NimStringV2 colontmpD__4;
NI j_2;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
j_2 = nsuFindStrA(a, s, sub, ((NI) (i_2)), last_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
{
if (!(j_2 < ((NI)0))) goto LA27_;
eqdestroy___stdZassertions_13((&colontmpD__4));
goto LA22;
}
LA27_: ;
colontmpD__4 = substr__system_7543(s, i_2, (NI)(j_2 - ((NI)1)));
prepareAdd((&result), colontmpD__4.len + 0);
appendString((&result), colontmpD__4);
prepareAdd((&result), by.len + 0);
appendString((&result), by);
i_2 = (NI)(j_2 + subLen);
{
LA24_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
}
} LA22: ;
colontmpD__3 = substr__system_7555(s, i_2);
prepareAdd((&result), colontmpD__3.len + 0);
appendString((&result), colontmpD__3);
{
LA21_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringV2 s, NimStringV2 suffix) {
NIM_BOOL result;
NI suffixLenX60gensym144_;
NI sLenX60gensym144_;
NI iX60gensym144_;
NI jX60gensym144_;
{ result = (NIM_BOOL)0;
suffixLenX60gensym144_ = suffix.len;
sLenX60gensym144_ = s.len;
iX60gensym144_ = ((NI)0);
jX60gensym144_ = (NI)(sLenX60gensym144_ - suffixLenX60gensym144_);
{
while (1) {
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = (((NI)0) <= (NI)(iX60gensym144_ + jX60gensym144_));
if (!(T3_)) goto LA4_;
T3_ = ((NI)(iX60gensym144_ + jX60gensym144_) < sLenX60gensym144_);
LA4_: ;
if (!T3_) goto LA2 ;
{
if (!!(((NU8)(s.p->data[(NI)(iX60gensym144_ + jX60gensym144_)]) == (NU8)(suffix.p->data[iX60gensym144_])))) goto LA7_;
result = NIM_FALSE;
goto BeforeRet_;
}
LA7_: ;
iX60gensym144_ += ((NI)1);
} LA2: ;
}
{
if (!(suffixLenX60gensym144_ <= iX60gensym144_)) goto LA11_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA11_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuNormalize)(NimStringV2 s) {
NimStringV2 result;
NI j;
result.len = 0; result.p = NIM_NIL;
result = mnewString(((NI) (s.len)));
j = ((NI)0);
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(s.len - ((NI)1));
res = ((NI)0);
{
while (1) {
if (!(res <= colontmp_)) goto LA3 ;
i = res;
{
if (!(((NU8)(s.p->data[i])) >= ((NU8)(65)) && ((NU8)(s.p->data[i])) <= ((NU8)(90)))) goto LA6_;
nimPrepareStrMutationV2((&result));
result.p->data[j] = ((NIM_CHAR) (((NI) ((NI)(((NU8)(s.p->data[i])) + ((NI)32))))));
j += ((NI)1);
}
goto LA4_;
LA6_: ;
{
if (!!(((NU8)(s.p->data[i]) == (NU8)(95)))) goto LA9_;
nimPrepareStrMutationV2((&result));
result.p->data[j] = s.p->data[i];
j += ((NI)1);
}
goto LA4_;
LA9_: ;
LA4_: ;
res += ((NI)1);
} LA3: ;
}
}
{
if (!!((j == s.len))) goto LA13_;
setLengthStrV2((&result), ((NI) (j)));
}
LA13_: ;
return result;
}
N_LIB_PRIVATE N_NOINLINE(void, invalidFormatString__pureZstrutils_2394)(NimStringV2 formatstr) {
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T1_;
NimStringV2 T2_;
{ T1_ = NIM_NIL;
T1_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T1_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T1_).Sup.Sup.name = "ValueError";
T2_.len = 0; T2_.p = NIM_NIL;
T2_ = rawNewString(formatstr.len + 23);
appendString((&T2_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_7);
appendString((&T2_), formatstr);
(*T1_).Sup.Sup.message = T2_;
(*T1_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T1_, "ValueError", "invalidFormatString", "strutils.nim", 2710);
goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c) {
prepareAdd(s, ((NI)1));
(*(*s).p).data[(*s).len] = c;
(*(*s).p).data[(NI)((*s).len + ((NI)1))] = 0;
(*s).len += ((NI)1);
}
N_LIB_PRIVATE N_NIMCALL(NI, findNormalized__pureZstrutils_2381)(NimStringV2 x, NimStringV2* inArray, NI inArrayLen_0) {
NI result;
NI i;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
i = ((NI)0);
{
while (1) {
if (!(i < (inArrayLen_0-1))) goto LA2 ;
{
NI T5_;
T5_ = (NI)0;
T5_ = nsuCmpIgnoreStyle(x, inArray[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T5_ == ((NI)0))) goto LA6_;
result = i;
goto BeforeRet_;
}
LA6_: ;
i += ((NI)2);
} LA2: ;
}
result = ((NI)-1);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringV2* s, NimStringV2 formatstr, NimStringV2* a, NI aLen_0) {
NI i;
NI num;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
i = ((NI)0);
num = ((NI)0);
{
while (1) {
if (!(i < formatstr.len)) goto LA2 ;
{
NIM_BOOL T5_;
T5_ = (NIM_BOOL)0;
T5_ = ((NU8)(formatstr.p->data[i]) == (NU8)(36));
if (!(T5_)) goto LA6_;
T5_ = ((NI)(i + ((NI)1)) < formatstr.len);
LA6_: ;
if (!T5_) goto LA7_;
switch (((NU8)(formatstr.p->data[(NI)(i + ((NI)1))]))) {
case 35:
{
{
if (!((aLen_0-1) < num)) goto LA12_;
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA12_: ;
prepareAdd((&(*s)), a[num].len + 0);
appendString((&(*s)), a[num]);
i += ((NI)2);
num += ((NI)1);
}
break;
case 36:
{
nimAddCharV1((&(*s)), 36);
i += ((NI)2);
}
break;
case 49 ... 57:
case 45:
{
NI colontmpD_;
NI colontmpD__2;
NI j;
NIM_BOOL negative;
NI idx;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
j = ((NI)0);
i += ((NI)1);
negative = ((NU8)(formatstr.p->data[i]) == (NU8)(45));
{
if (!negative) goto LA18_;
i += ((NI)1);
}
LA18_: ;
{
while (1) {
NIM_BOOL T22_;
T22_ = (NIM_BOOL)0;
T22_ = (i < formatstr.len);
if (!(T22_)) goto LA23_;
T22_ = (((NU8)(formatstr.p->data[i])) >= ((NU8)(48)) && ((NU8)(formatstr.p->data[i])) <= ((NU8)(57)));
LA23_: ;
if (!T22_) goto LA21 ;
j = (NI)((NI)((NI)(j * ((NI)10)) + ((NU8)(formatstr.p->data[i]))) - ((NI)48));
i += ((NI)1);
} LA21: ;
}
{
if (!!(negative)) goto LA26_;
colontmpD_ = (NI)(j - ((NI)1));
idx = colontmpD_;
}
goto LA24_;
LA26_: ;
{
colontmpD__2 = (NI)(aLen_0 - j);
idx = colontmpD__2;
}
LA24_: ;
{
NIM_BOOL T31_;
T31_ = (NIM_BOOL)0;
T31_ = (idx < ((NI)0));
if (T31_) goto LA32_;
T31_ = ((aLen_0-1) < idx);
LA32_: ;
if (!T31_) goto LA33_;
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA33_: ;
prepareAdd((&(*s)), a[idx].len + 0);
appendString((&(*s)), a[idx]);
}
break;
case 123:
{
NI j_2;
NI k;
NIM_BOOL negative_2;
NI isNumber;
j_2 = (NI)(i + ((NI)2));
k = ((NI)0);
negative_2 = ((NU8)(formatstr.p->data[j_2]) == (NU8)(45));
{
if (!negative_2) goto LA38_;
j_2 += ((NI)1);
}
LA38_: ;
isNumber = ((NI)0);
{
while (1) {
NIM_BOOL T42_;
T42_ = (NIM_BOOL)0;
T42_ = (j_2 < formatstr.len);
if (!(T42_)) goto LA43_;
T42_ = !((((NU8)(formatstr.p->data[j_2])) == ((NU8)(0)) || ((NU8)(formatstr.p->data[j_2])) == ((NU8)(125))));
LA43_: ;
if (!T42_) goto LA41 ;
{
if (!(((NU8)(formatstr.p->data[j_2])) >= ((NU8)(48)) && ((NU8)(formatstr.p->data[j_2])) <= ((NU8)(57)))) goto LA46_;
k = (NI)((NI)((NI)(k * ((NI)10)) + ((NU8)(formatstr.p->data[j_2]))) - ((NI)48));
{
if (!(isNumber == ((NI)0))) goto LA50_;
isNumber = ((NI)1);
}
LA50_: ;
}
goto LA44_;
LA46_: ;
{
isNumber = ((NI)-1);
}
LA44_: ;
j_2 += ((NI)1);
} LA41: ;
}
{
NI colontmpD__3;
NI colontmpD__4;
NI idx_2;
if (!(isNumber == ((NI)1))) goto LA55_;
colontmpD__3 = (NI)0;
colontmpD__4 = (NI)0;
{
if (!!(negative_2)) goto LA59_;
colontmpD__3 = (NI)(k - ((NI)1));
idx_2 = colontmpD__3;
}
goto LA57_;
LA59_: ;
{
colontmpD__4 = (NI)(aLen_0 - k);
idx_2 = colontmpD__4;
}
LA57_: ;
{
NIM_BOOL T64_;
T64_ = (NIM_BOOL)0;
T64_ = (idx_2 < ((NI)0));
if (T64_) goto LA65_;
T64_ = ((aLen_0-1) < idx_2);
LA65_: ;
if (!T64_) goto LA66_;
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA66_: ;
prepareAdd((&(*s)), a[idx_2].len + 0);
appendString((&(*s)), a[idx_2]);
}
goto LA53_;
LA55_: ;
{
NimStringV2 colontmpD__5;
NI x;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__5 = substr__system_7543(formatstr, (NI)(i + ((NI)2)), (NI)(j_2 - ((NI)1)));
x = findNormalized__pureZstrutils_2381(colontmpD__5, a, aLen_0);
if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
{
NIM_BOOL T72_;
T72_ = (NIM_BOOL)0;
T72_ = (((NI)0) <= x);
if (!(T72_)) goto LA73_;
T72_ = (x < (aLen_0-1));
LA73_: ;
if (!T72_) goto LA74_;
prepareAdd((&(*s)), a[(NI)(x + ((NI)1))].len + 0);
appendString((&(*s)), a[(NI)(x + ((NI)1))]);
}
goto LA70_;
LA74_: ;
{
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
}
LA70_: ;
{
LA69_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__5));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA53_: ;
i = (NI)(j_2 + ((NI)1));
}
break;
case 97 ... 122:
case 65 ... 90:
case 128 ... 255:
case 95:
{
NimStringV2 colontmpD__6;
NI j_3;
NI x_2;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
j_3 = (NI)(i + ((NI)1));
{
while (1) {
NIM_BOOL T83_;
T83_ = (NIM_BOOL)0;
T83_ = (j_3 < formatstr.len);
if (!(T83_)) goto LA84_;
T83_ = (((NU8)(formatstr.p->data[j_3])) >= ((NU8)(97)) && ((NU8)(formatstr.p->data[j_3])) <= ((NU8)(122)) || ((NU8)(formatstr.p->data[j_3])) >= ((NU8)(65)) && ((NU8)(formatstr.p->data[j_3])) <= ((NU8)(90)) || ((NU8)(formatstr.p->data[j_3])) >= ((NU8)(48)) && ((NU8)(formatstr.p->data[j_3])) <= ((NU8)(57)) || ((NU8)(formatstr.p->data[j_3])) >= ((NU8)(128)) && ((NU8)(formatstr.p->data[j_3])) <= ((NU8)(255)) || ((NU8)(formatstr.p->data[j_3])) == ((NU8)(95)));
LA84_: ;
if (!T83_) goto LA82 ;
j_3 += ((NI)1);
} LA82: ;
}
colontmpD__6 = substr__system_7543(formatstr, (NI)(i + ((NI)1)), (NI)(j_3 - ((NI)1)));
x_2 = findNormalized__pureZstrutils_2381(colontmpD__6, a, aLen_0);
if (NIM_UNLIKELY(*nimErr_)) goto LA80_;
{
NIM_BOOL T87_;
T87_ = (NIM_BOOL)0;
T87_ = (((NI)0) <= x_2);
if (!(T87_)) goto LA88_;
T87_ = (x_2 < (aLen_0-1));
LA88_: ;
if (!T87_) goto LA89_;
prepareAdd((&(*s)), a[(NI)(x_2 + ((NI)1))].len + 0);
appendString((&(*s)), a[(NI)(x_2 + ((NI)1))]);
}
goto LA85_;
LA89_: ;
{
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto LA80_;
}
LA85_: ;
i = j_3;
{
LA80_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__6));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
default:
{
invalidFormatString__pureZstrutils_2394(formatstr);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
break;
}
}
goto LA3_;
LA7_: ;
{
nimAddCharV1((&(*s)), formatstr.p->data[i]);
i += ((NI)1);
}
LA3_: ;
} LA2: ;
}
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatVarargs)(NimStringV2 formatstr, NimStringV2* a, NI aLen_0) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) ((NI)(formatstr.len + aLen_0))));
nsuAddf((&result), formatstr, a, aLen_0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreCase)(NimStringV2 a, NimStringV2 b) {
NI result;
NI aLenX60gensym20_;
NI bLenX60gensym20_;
NI iX60gensym20_;
NI mX60gensym20_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
aLenX60gensym20_ = a.len;
bLenX60gensym20_ = b.len;
iX60gensym20_ = ((NI)0);
mX60gensym20_ = ((aLenX60gensym20_ <= bLenX60gensym20_) ? aLenX60gensym20_ : bLenX60gensym20_);
{
while (1) {
NIM_CHAR T3_;
NIM_CHAR T4_;
if (!(iX60gensym20_ < mX60gensym20_)) goto LA2 ;
T3_ = (NIM_CHAR)0;
T3_ = toLowerAscii__stdZprivateZstrimpl_1(a.p->data[iX60gensym20_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T4_ = (NIM_CHAR)0;
T4_ = toLowerAscii__stdZprivateZstrimpl_1(b.p->data[iX60gensym20_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = (NI)(((NU8)(T3_)) - ((NU8)(T4_)));
{
if (!!((result == ((NI)0)))) goto LA7_;
goto BeforeRet_;
}
LA7_: ;
iX60gensym20_ += ((NI)1);
} LA2: ;
}
result = (NI)(aLenX60gensym20_ - bLenX60gensym20_);
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringV2 s, NimStringV2 prefix) {
NIM_BOOL result;
NI prefixLenX60gensym137_;
NI sLenX60gensym137_;
NI iX60gensym137_;
{ result = (NIM_BOOL)0;
prefixLenX60gensym137_ = prefix.len;
sLenX60gensym137_ = s.len;
iX60gensym137_ = ((NI)0);
{
while (1) {
{
if (!(prefixLenX60gensym137_ <= iX60gensym137_)) goto LA5_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA5_: ;
{
NIM_BOOL T9_;
T9_ = (NIM_BOOL)0;
T9_ = (sLenX60gensym137_ <= iX60gensym137_);
if (T9_) goto LA10_;
T9_ = !(((NU8)(s.p->data[iX60gensym137_]) == (NU8)(prefix.p->data[iX60gensym137_])));
LA10_: ;
if (!T9_) goto LA11_;
result = NIM_FALSE;
goto BeforeRet_;
}
LA11_: ;
iX60gensym137_ += ((NI)1);
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringV2 s, NimStringV2 sub, NI start, NI last) {
NI result;
NI subLen;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
{
if (!((NI)(s.len - ((NI) (start))) < sub.len)) goto LA3_;
result = ((NI)-1);
goto BeforeRet_;
}
LA3_: ;
{
if (!(sub.len == ((NI)1))) goto LA7_;
result = nsuFindChar(s, sub.p->data[((NI)0)], start, last);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}
LA7_: ;
subLen = sub.len;
{
NIM_BOOL T11_;
NIM_BOOL T12_;
NI colontmpD_;
NI colontmpD__2;
void* found;
T11_ = (NIM_BOOL)0;
T12_ = (NIM_BOOL)0;
T12_ = (last < ((NI)0));
if (!(T12_)) goto LA13_;
T12_ = (((NI) (start)) < s.len);
LA13_: ;
T11_ = T12_;
if (!(T11_)) goto LA14_;
T11_ = !((subLen == ((NI)0)));
LA14_: ;
if (!T11_) goto LA15_;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
found = memmem(((void*) ((&s.p->data[start]))), ((size_t) ((NI)(s.len - ((NI) (start))))), ((void*) (nimToCStringConv(sub))), ((size_t) (subLen)));
{
if (!!((found == 0))) goto LA19_;
colontmpD_ = minuspercent___system_790(((NI) (ptrdiff_t) (found)), ((NI) (nimToCStringConv(s))));
result = colontmpD_;
}
goto LA17_;
LA19_: ;
{
colontmpD__2 = ((NI)-1);
result = colontmpD__2;
}
LA17_: ;
}
goto LA9_;
LA15_: ;
{
tyArray__9cc9aPiDa8VaWjVcFLabEDZQ T23_;
nimZeroMem((void*)T23_, sizeof(tyArray__9cc9aPiDa8VaWjVcFLabEDZQ));
nsuInitNewSkipTable(sub, T23_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = nsuFindStrA(T23_, s, sub, start, last);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA9_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuCountString)(NimStringV2 s, NimStringV2 sub, NIM_BOOL overlapping) {
NI result;
NI i;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
{
if (!!((((NI)0) < sub.len))) goto LA3_;
failedAssertImpl__stdZassertions_224(TM__JGc9b9bh2D3nTdUR7TGyq8aA_9);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
result = ((NI)0);
i = ((NI)0);
{
while (1) {
i = nsuFindStr(s, sub, ((NI) (i)), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(i < ((NI)0))) goto LA9_;
goto LA5;
}
LA9_: ;
{
if (!overlapping) goto LA13_;
i += ((NI)1);
}
goto LA11_;
LA13_: ;
{
i += sub.len;
}
LA11_: ;
result += ((NI)1);
}
} LA5: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuRepeatChar)(NIM_CHAR c, NI count) {
NimStringV2 result;
result.len = 0; result.p = NIM_NIL;
result = mnewString(count);
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(((NI) (count)) - ((NI)1));
res = ((NI)0);
{
while (1) {
if (!(res <= colontmp_)) goto LA3 ;
i = res;
nimPrepareStrMutationV2((&result));
result.p->data[i] = c;
res += ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr, NimStringV2* a, NI aLen_0) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) ((NI)(formatstr.len + (NI)((NU32)(aLen_0) << (NU32)(((NI)4)))))));
nsuAddf((&result), formatstr, a, aLen_0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr, NimStringV2 a) {
NimStringV2 result;
tyArray__nHXaesL0DJZHyVS07ARPRA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) ((NI)(formatstr.len + a.len))));
T2_[0] = a;
nsuAddf((&result), formatstr, T2_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&a));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c) {
NIM_CHAR result;
result = (NIM_CHAR)0;
{
if (!(((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(90)))) goto LA3_;
result = ((NIM_CHAR) ((NU8)(((NU8) (((NU8)(c)))) ^ ((NU8)32))));
}
goto LA1_;
LA3_: ;
{
result = c;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuToLowerAsciiStr)(NimStringV2 s) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = mnewString(((NI) (s.len)));
{
NI iX60gensym7_;
NI colontmp_;
NI res;
iX60gensym7_ = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(s.len - ((NI)1));
res = ((NI)0);
{
while (1) {
NIM_CHAR T4_;
if (!(res <= colontmp_)) goto LA3 ;
iX60gensym7_ = res;
nimPrepareStrMutationV2((&result));
T4_ = (NIM_CHAR)0;
T4_ = nsuToLowerAsciiChar(s.p->data[iX60gensym7_]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result.p->data[iX60gensym7_] = T4_;
res += ((NI)1);
} LA3: ;
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__pureZstrutils_1816)(NimStringV2 s, NimStringV2 sub) {
NIM_BOOL result;
NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
T1_ = (NI)0;
T1_ = nsuFindStr(s, sub, ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = (((NI)0) <= T1_);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(void, appendChar)(NimStringV2* dest, NIM_CHAR c) {
(*(*dest).p).data[(*dest).len] = c;
(*(*dest).p).data[(NI)((*dest).len + ((NI)1))] = 0;
(*dest).len += ((NI)1);
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuUnescape)(NimStringV2 s, NimStringV2 prefix, NimStringV2 suffix) {
NimStringV2 result;
NI i;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) (s.len)));
i = prefix.len;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T6_;
NimStringV2 T7_;
T3_ = (NIM_BOOL)0;
T3_ = nsuStartsWith(s, prefix);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T3_)) goto LA4_;
T6_ = NIM_NIL;
T6_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T6_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T6_).Sup.Sup.name = "ValueError";
T7_.len = 0; T7_.p = NIM_NIL;
T7_ = rawNewString(prefix.len + 28);
appendString((&T7_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_11);
appendString((&T7_), prefix);
(*T6_).Sup.Sup.message = T7_;
(*T6_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T6_, "ValueError", "unescape", "strutils.nim", 2329);
goto BeforeRet_;
}
LA4_: ;
{
while (1) {
{
if (!((NI)(s.len - suffix.len) <= i)) goto LA12_;
goto LA8;
}
LA12_: ;
{
if (!((NU8)(s.p->data[i]) == (NU8)(92))) goto LA16_;
{
if (!(s.len <= (NI)(i + ((NI)1)))) goto LA20_;
nimAddCharV1((&result), 92);
goto LA8;
}
LA20_: ;
switch (((NU8)(s.p->data[(NI)(i + ((NI)1))]))) {
case 120:
{
NI c;
NI T23_;
i += ((NI)2);
c = ((NI)0);
T23_ = (NI)0;
T23_ = parseHex__pureZstrutils_982(s, (&c), i, ((NI)2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i += T23_;
nimAddCharV1((&result), ((NIM_CHAR) (((NI) (c)))));
i -= ((NI)2);
}
break;
case 92:
{
nimAddCharV1((&result), 92);
}
break;
case 39:
{
nimAddCharV1((&result), 39);
}
break;
case 34:
{
nimAddCharV1((&result), 34);
}
break;
default:
{
NimStringV2 colontmpD_;
NimStringV2 T28_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T28_.len = 0; T28_.p = NIM_NIL;
T28_ = rawNewString(2);
appendString((&T28_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_13);
appendChar((&T28_), s.p->data[(NI)(i + ((NI)1))]);
colontmpD_ = T28_;
prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
eqdestroy___stdZassertions_13((&colontmpD_));
}
break;
}
i += ((NI)2);
}
goto LA14_;
LA16_: ;
{
nimAddCharV1((&result), s.p->data[i]);
i += ((NI)1);
}
LA14_: ;
}
} LA8: ;
{
NIM_BOOL T32_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T35_;
NimStringV2 T36_;
T32_ = (NIM_BOOL)0;
T32_ = nsuEndsWith(s, suffix);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!(T32_)) goto LA33_;
T35_ = NIM_NIL;
T35_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T35_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T35_).Sup.Sup.name = "ValueError";
T36_.len = 0; T36_.p = NIM_NIL;
T36_ = rawNewString(suffix.len + 24);
appendString((&T36_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_15);
appendString((&T36_), suffix);
(*T35_).Sup.Sup.message = T36_;
(*T35_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T35_, "ValueError", "unescape", "strutils.nim", 2357);
goto BeforeRet_;
}
LA33_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuRFindChar)(NimStringV2 s, NIM_CHAR sub, NI start, NI last) {
NI result;
NI colontmpD_;
NI colontmpD__2;
NI last_2;
{ result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
if (!(last == ((NI)-1))) goto LA3_;
colontmpD_ = (s.len-1);
last_2 = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = last;
last_2 = colontmpD__2;
}
LA1_: ;
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = ((NI) (start));
res = last_2;
{
while (1) {
if (!(colontmp_ <= res)) goto LA8 ;
i = res;
{
if (!((NU8)(sub) == (NU8)(s.p->data[i]))) goto LA11_;
result = i;
goto BeforeRet_;
}
LA11_: ;
res -= ((NI)1);
} LA8: ;
}
}
result = ((NI)-1);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(NI, max__pureZstrutils_1717)(NI x, NI y) {
NI result;
NI colontmpD_;
NI colontmpD__2;
result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
if (!(((NI) (y)) <= ((NI) (x)))) goto LA3_;
colontmpD_ = x;
result = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = y;
result = colontmpD__2;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuRFindStr)(NimStringV2 s, NimStringV2 sub, NI start, NI last) {
NI result;
NI colontmpD_;
NI colontmpD__2;
NI last_2;
{ result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
NI colontmpD__3;
NI colontmpD__4;
NI rightIndex;
NI T5_;
NI T11_;
if (!(sub.len == ((NI)0))) goto LA3_;
colontmpD__3 = (NI)0;
colontmpD__4 = (NI)0;
T5_ = (NI)0;
{
if (!(last < ((NI)0))) goto LA8_;
colontmpD__3 = s.len;
T5_ = colontmpD__3;
}
goto LA6_;
LA8_: ;
{
colontmpD__4 = last;
T5_ = colontmpD__4;
}
LA6_: ;
rightIndex = ((NI) (T5_));
T11_ = (NI)0;
T11_ = max__pureZstrutils_1717(start, rightIndex);
result = ((NI) (T11_));
goto BeforeRet_;
}
LA3_: ;
{
if (!((NI)(s.len - ((NI) (start))) < sub.len)) goto LA14_;
result = ((NI)-1);
goto BeforeRet_;
}
LA14_: ;
{
if (!(last == ((NI)-1))) goto LA18_;
colontmpD_ = (s.len-1);
last_2 = colontmpD_;
}
goto LA16_;
LA18_: ;
{
colontmpD__2 = last;
last_2 = colontmpD__2;
}
LA16_: ;
result = ((NI)0);
{
NI i;
NI colontmp_;
NI colontmp__2;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp__2 = (NI)0;
colontmp_ = (NI)((NI)(last_2 - sub.len) + ((NI)1));
colontmp__2 = ((NI) (start));
res = colontmp_;
{
while (1) {
if (!(colontmp__2 <= res)) goto LA23 ;
i = res;
{
NI j;
NI colontmp__3;
NI res_2;
j = (NI)0;
colontmp__3 = (NI)0;
colontmp__3 = (NI)(sub.len - ((NI)1));
res_2 = ((NI)0);
{
while (1) {
if (!(res_2 <= colontmp__3)) goto LA26 ;
j = res_2;
result = i;
{
if (!!(((NU8)(sub.p->data[j]) == (NU8)(s.p->data[(NI)(i + j)])))) goto LA29_;
result = ((NI)-1);
goto LA24;
}
LA29_: ;
res_2 += ((NI)1);
} LA26: ;
}
} LA24: ;
{
if (!!((result == ((NI)-1)))) goto LA33_;
goto BeforeRet_;
}
LA33_: ;
res -= ((NI)1);
} LA23: ;
}
}
result = ((NI)-1);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, nsuSplitChar)(NimStringV2 s, NIM_CHAR sep, NI maxsplit) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result.len = 0; result.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
{
NimStringV2 xX60gensym66_;
NI lastX60gensym33_;
NI splitsX60gensym33_;
xX60gensym66_.len = 0; xX60gensym66_.p = NIM_NIL;
lastX60gensym33_ = ((NI)0);
splitsX60gensym33_ = maxsplit;
{
while (1) {
NI firstX60gensym33_;
NimStringV2 T13_;
NimStringV2 blitTmp;
if (!(lastX60gensym33_ <= s.len)) goto LA4 ;
firstX60gensym33_ = lastX60gensym33_;
{
while (1) {
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (lastX60gensym33_ < s.len);
if (!(T7_)) goto LA8_;
T7_ = !(((NU8)(s.p->data[lastX60gensym33_]) == (NU8)(sep)));
LA8_: ;
if (!T7_) goto LA6 ;
lastX60gensym33_ += ((NI)1);
} LA6: ;
}
{
if (!(splitsX60gensym33_ == ((NI)0))) goto LA11_;
lastX60gensym33_ = s.len;
}
LA11_: ;
T13_.len = 0; T13_.p = NIM_NIL;
T13_ = substr__system_7543(s, firstX60gensym33_, (NI)(lastX60gensym33_ - ((NI)1)));
eqsink___stdZassertions_19((&xX60gensym66_), T13_);
blitTmp = xX60gensym66_;
xX60gensym66_.len = 0; xX60gensym66_.p = NIM_NIL;
add__stdZenumutils_69((&result), blitTmp);
{
if (!(splitsX60gensym33_ == ((NI)0))) goto LA16_;
goto LA3;
}
LA16_: ;
splitsX60gensym33_ -= ((NI)1);
lastX60gensym33_ += ((NI)1);
} LA4: ;
} LA3: ;
{
LA2_:;
}
{
eqdestroy___stdZassertions_13((&xX60gensym66_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, nsuSplitLines)(NimStringV2 s, NIM_BOOL keepEol) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result.len = 0; result.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
{
NimStringV2 xX60gensym75_;
NI first;
NI last;
NI eolpos;
xX60gensym75_.len = 0; xX60gensym75_.p = NIM_NIL;
first = ((NI)0);
last = ((NI)0);
eolpos = ((NI)0);
{
while (1) {
NI colontmpD_;
NI colontmpD__2;
NI T26_;
NimStringV2 T32_;
NimStringV2 blitTmp;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
while (1) {
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (last < s.len);
if (!(T7_)) goto LA8_;
T7_ = !((((NU8)(s.p->data[last])) == ((NU8)(13)) || ((NU8)(s.p->data[last])) == ((NU8)(10))));
LA8_: ;
if (!T7_) goto LA6 ;
last += ((NI)1);
} LA6: ;
}
eolpos = last;
{
if (!(last < s.len)) goto LA11_;
{
if (!((NU8)(s.p->data[last]) == (NU8)(10))) goto LA15_;
last += ((NI)1);
}
goto LA13_;
LA15_: ;
{
if (!((NU8)(s.p->data[last]) == (NU8)(13))) goto LA18_;
last += ((NI)1);
{
NIM_BOOL T22_;
T22_ = (NIM_BOOL)0;
T22_ = (last < s.len);
if (!(T22_)) goto LA23_;
T22_ = ((NU8)(s.p->data[last]) == (NU8)(10));
LA23_: ;
if (!T22_) goto LA24_;
last += ((NI)1);
}
LA24_: ;
}
goto LA13_;
LA18_: ;
LA13_: ;
}
LA11_: ;
T26_ = (NI)0;
{
if (!keepEol) goto LA29_;
colontmpD_ = (NI)(last - ((NI)1));
T26_ = colontmpD_;
}
goto LA27_;
LA29_: ;
{
colontmpD__2 = (NI)(eolpos - ((NI)1));
T26_ = colontmpD__2;
}
LA27_: ;
T32_.len = 0; T32_.p = NIM_NIL;
T32_ = substr__system_7543(s, first, T26_);
eqsink___stdZassertions_19((&xX60gensym75_), T32_);
blitTmp = xX60gensym75_;
xX60gensym75_.len = 0; xX60gensym75_.p = NIM_NIL;
add__stdZenumutils_69((&result), blitTmp);
{
if (!(eolpos == last)) goto LA35_;
goto LA3;
}
LA35_: ;
first = last;
}
} LA3: ;
{
LA2_:;
}
{
eqdestroy___stdZassertions_13((&xX60gensym75_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuReplaceChar)(NimStringV2 s, NIM_CHAR sub, NIM_CHAR by) {
NimStringV2 result;
NI i;
result.len = 0; result.p = NIM_NIL;
result = mnewString(((NI) (s.len)));
i = ((NI)0);
{
while (1) {
if (!(i < s.len)) goto LA2 ;
{
if (!((NU8)(s.p->data[i]) == (NU8)(sub))) goto LA5_;
nimPrepareStrMutationV2((&result));
result.p->data[i] = by;
}
goto LA3_;
LA5_: ;
{
nimPrepareStrMutationV2((&result));
result.p->data[i] = s.p->data[i];
}
LA3_: ;
i += ((NI)1);
} LA2: ;
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nimIdentNormalize__pureZstrutils_122)(NimStringV2 s) {
NimStringV2 result;
NI j;
{ result.len = 0; result.p = NIM_NIL;
result = mnewString(((NI) (s.len)));
{
if (!(s.len == ((NI)0))) goto LA3_;
goto BeforeRet_;
}
LA3_: ;
nimPrepareStrMutationV2((&result));
result.p->data[((NI)0)] = s.p->data[((NI)0)];
j = ((NI)1);
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(s.len - ((NI)1));
res = ((NI)1);
{
while (1) {
if (!(res <= colontmp_)) goto LA7 ;
i = res;
{
if (!(((NU8)(s.p->data[i])) >= ((NU8)(65)) && ((NU8)(s.p->data[i])) <= ((NU8)(90)))) goto LA10_;
nimPrepareStrMutationV2((&result));
result.p->data[j] = ((NIM_CHAR) (((NI) ((NI)(((NU8)(s.p->data[i])) + ((NI)32))))));
j += ((NI)1);
}
goto LA8_;
LA10_: ;
{
if (!!(((NU8)(s.p->data[i]) == (NU8)(95)))) goto LA13_;
nimPrepareStrMutationV2((&result));
result.p->data[j] = s.p->data[i];
j += ((NI)1);
}
goto LA8_;
LA13_: ;
LA8_: ;
res += ((NI)1);
} LA7: ;
}
}
{
if (!!((j == s.len))) goto LA17_;
setLengthStrV2((&result), ((NI) (j)));
}
LA17_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
int result;
result = (int)0;
result = memcmp(a, b, ((size_t) (size)));
return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size) {
NIM_BOOL result;
int T1_;
result = (NIM_BOOL)0;
T1_ = (int)0;
T1_ = nimCmpMem(a, b, size);
result = (T1_ == ((NI32)0));
return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b) {
NIM_BOOL result;
NI alen;
NI blen;
{ result = (NIM_BOOL)0;
alen = a.len;
blen = b.len;
{
if (!(alen == blen)) goto LA3_;
{
if (!(alen == ((NI)0))) goto LA7_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA7_: ;
result = equalMem__system_1727(((void*) ((&a.p->data[((NI)0)]))), ((void*) ((&b.p->data[((NI)0)]))), ((NI) (alen)));
goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w, parseEnum__commands_1089)(NimStringV2 s, tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w default_0) {
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w result;
NimStringV2 colontmpD_;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__2;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__3;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__4;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__5;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__6;
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w colontmpD__7;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD__3 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD__4 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD__5 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD__6 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD__7 = (tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0;
colontmpD_ = nimIdentNormalize__pureZstrutils_122(s);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_16)) goto LA1_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_18)) goto LA2_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_20)) goto LA3_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_22)) goto LA4_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_24)) goto LA5_;
goto LA6_;
LA1_: ;
{
colontmpD__2 = ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0);
result = colontmpD__2;
}
goto LA7_;
LA2_: ;
{
colontmpD__3 = ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)1);
result = colontmpD__3;
}
goto LA7_;
LA3_: ;
{
colontmpD__4 = ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)2);
result = colontmpD__4;
}
goto LA7_;
LA4_: ;
{
colontmpD__5 = ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)3);
result = colontmpD__5;
}
goto LA7_;
LA5_: ;
{
colontmpD__6 = ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)4);
result = colontmpD__6;
}
goto LA7_;
LA6_: ;
{
colontmpD__7 = default_0;
result = colontmpD__7;
}
LA7_: ;
eqdestroy___stdZassertions_13((&colontmpD_));
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindCharSet)(NimStringV2 s, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars, NI start, NI last) {
NI result;
NI colontmpD_;
NI colontmpD__2;
NI last_2;
{ result = (NI)0;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
result = ((NI)-1);
{
if (!(last < ((NI)0))) goto LA3_;
colontmpD_ = (s.len-1);
last_2 = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = last;
last_2 = colontmpD__2;
}
LA1_: ;
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = ((NI) (start));
res = colontmp_;
{
while (1) {
if (!(res <= last_2)) goto LA8 ;
i = res;
{
if (!((chars[(NU)((((NU8)(s.p->data[i]))))>>3] &(1U<<((NU)((((NU8)(s.p->data[i]))))&7U)))!=0)) goto LA11_;
result = i;
goto BeforeRet_;
}
LA11_: ;
res += ((NI)1);
} LA8: ;
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__pureZstrutils_1820)(NimStringV2 s, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
NIM_BOOL result;
NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
T1_ = (NI)0;
T1_ = nsuFindCharSet(s, chars, ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
result = (((NI)0) <= T1_);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuContinuesWith)(NimStringV2 s, NimStringV2 substr, NI start) {
NIM_BOOL result;
NI i;
{ result = (NIM_BOOL)0;
i = ((NI)0);
{
while (1) {
{
if (!(substr.len <= i)) goto LA5_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA5_: ;
{
NIM_BOOL T9_;
T9_ = (NIM_BOOL)0;
T9_ = (s.len <= (NI)(i + ((NI) (start))));
if (T9_) goto LA10_;
T9_ = !(((NU8)(s.p->data[(NI)(i + ((NI) (start)))]) == (NU8)(substr.p->data[i])));
LA10_: ;
if (!T9_) goto LA11_;
result = NIM_FALSE;
goto BeforeRet_;
}
LA11_: ;
i += ((NI)1);
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, multiReplace__pureZstrutils_1868)(NimStringV2 s, tyTuple__UV3llMMYFckfui8YMBuUZA* replacements, NI replacementsLen_0) {
NimStringV2 result;
NI i;
tySet_tyChar__nmiMWKVIe46vacnhAFrQvw fastChk;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) (s.len)));
i = ((NI)0);
nimZeroMem((void*)fastChk, sizeof(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw));
nimZeroMem(fastChk, sizeof(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw));
{
NimStringV2* sub;
NimStringV2* by;
NI i_2;
sub = (NimStringV2*)0;
by = (NimStringV2*)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < replacementsLen_0)) goto LA3 ;
sub = (&replacements[i_2].Field0);
by = (&replacements[i_2].Field1);
{
if (!(((NI)0) < (*sub).len)) goto LA6_;
fastChk[(NU)((((NU8)((*sub).p->data[((NI)0)]))))>>3] |=(1U<<((((NU8)((*sub).p->data[((NI)0)])))&7U));
}
LA6_: ;
i_2 += ((NI)1);
} LA3: ;
}
}
{
while (1) {
if (!(i < s.len)) goto LA9 ;
{
{
if (!((fastChk[(NU)((((NU8)(s.p->data[i]))))>>3] &(1U<<((NU)((((NU8)(s.p->data[i]))))&7U)))!=0)) goto LA13_;
{
NimStringV2* sub_2;
NimStringV2* by_2;
NI i_3;
sub_2 = (NimStringV2*)0;
by_2 = (NimStringV2*)0;
i_3 = ((NI)0);
{
while (1) {
if (!(i_3 < replacementsLen_0)) goto LA17 ;
sub_2 = (&replacements[i_3].Field0);
by_2 = (&replacements[i_3].Field1);
{
NIM_BOOL T20_;
T20_ = (NIM_BOOL)0;
T20_ = (((NI)0) < (*sub_2).len);
if (!(T20_)) goto LA21_;
T20_ = nsuContinuesWith(s, (*sub_2), ((NI) (i)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA21_: ;
if (!T20_) goto LA22_;
prepareAdd((&result), (*by_2).len + 0);
appendString((&result), (*by_2));
i += (*sub_2).len;
goto LA10;
}
LA22_: ;
i_3 += ((NI)1);
} LA17: ;
}
}
}
LA13_: ;
nimAddCharV1((&result), s.p->data[i]);
i += ((NI)1);
} LA10: ;
} LA9: ;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuJoinSep)(NimStringV2* a, NI aLen_0, NimStringV2 sep) {
NimStringV2 result;
result.len = 0; result.p = NIM_NIL;
{
NI L;
if (!(((NI)0) < aLen_0)) goto LA3_;
L = (NI)(sep.len * (NI)(aLen_0 - ((NI)1)));
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (aLen_0-1);
res = ((NI)0);
{
while (1) {
if (!(res <= colontmp_)) goto LA7 ;
i = res;
L += a[i].len;
res += ((NI)1);
} LA7: ;
}
}
result = rawNewString(((NI) (L)));
prepareAdd((&result), a[((NI)0)].len + 0);
appendString((&result), a[((NI)0)]);
{
NI i_2;
NI colontmp__2;
NI res_2;
i_2 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = (aLen_0-1);
res_2 = ((NI)1);
{
while (1) {
if (!(res_2 <= colontmp__2)) goto LA10 ;
i_2 = res_2;
prepareAdd((&result), sep.len + 0);
appendString((&result), sep);
prepareAdd((&result), a[i_2].len + 0);
appendString((&result), a[i_2]);
res_2 += ((NI)1);
} LA10: ;
}
}
}
goto LA1_;
LA3_: ;
{
result = TM__JGc9b9bh2D3nTdUR7TGyq8aA_25;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuParseHexInt)(NimStringV2 s) {
NI result;
NI L;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
result = ((NI)0);
L = parseHex__pureZstrutils_982(s, (&result), ((NI)0), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T7_;
NimStringV2 T8_;
T3_ = (NIM_BOOL)0;
T3_ = !((L == s.len));
if (T3_) goto LA4_;
T3_ = (L == ((NI)0));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T7_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T7_).Sup.Sup.name = "ValueError";
T8_.len = 0; T8_.p = NIM_NIL;
T8_ = rawNewString(s.len + 21);
appendString((&T8_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_27);
appendString((&T8_), s);
(*T7_).Sup.Sup.message = T8_;
(*T7_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T7_, "ValueError", "parseHexInt", "strutils.nim", 1175);
goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuParseInt)(NimStringV2 s) {
NI result;
NI L;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
result = ((NI)0);
L = parseInt__pureZparseutils_832(s, (&result), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T7_;
NimStringV2 T8_;
T3_ = (NIM_BOOL)0;
T3_ = !((L == s.len));
if (T3_) goto LA4_;
T3_ = (L == ((NI)0));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T7_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T7_).Sup.Sup.name = "ValueError";
T8_.len = 0; T8_.p = NIM_NIL;
T8_ = rawNewString(s.len + 17);
appendString((&T8_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_29);
appendString((&T8_), s);
(*T7_).Sup.Sup.message = T8_;
(*T7_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T7_, "ValueError", "parseInt", "strutils.nim", 1093);
goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuToOctal)(NIM_CHAR c) {
NimStringV2 result;
NI val;
result.len = 0; result.p = NIM_NIL;
result = mnewString(((NI)3));
val = ((NU8)(c));
{
NI i;
NI res;
i = (NI)0;
res = ((NI)2);
{
while (1) {
if (!(((NI)0) <= res)) goto LA3 ;
i = res;
nimPrepareStrMutationV2((&result));
result.p->data[i] = ((NIM_CHAR) (((NI) ((NI)((NI)(val % ((NI)8)) + ((NI)48))))));
val = (NI)(val / ((NI)8));
res -= ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA, parseEnum__commands_1371)(NimStringV2 s) {
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA result;
NimStringV2 colontmpD_;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__2;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__3;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__4;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__5;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__6;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__7;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__8;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__9;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__10;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__11;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__12;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__13;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__14;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__15;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__16;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__17;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__18;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__19;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__20;
tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA colontmpD__21;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__3 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__4 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__5 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__6 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__7 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__8 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__9 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__10 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__11 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__12 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__13 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__14 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__15 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__16 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__17 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__18 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__19 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__20 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD__21 = (tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0;
colontmpD_ = nimIdentNormalize__pureZstrutils_122(s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
switch (hashString(colontmpD_) & 31) {
case 1:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_69)) goto LA21_;
break;
case 3:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_35)) goto LA4_;
break;
case 4:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_41)) goto LA7_;
break;
case 5:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_57)) goto LA15_;
break;
case 6:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_31)) goto LA2_;
break;
case 9:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_55)) goto LA14_;
break;
case 11:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_63)) goto LA18_;
break;
case 12:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_65)) goto LA19_;
break;
case 15:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_37)) goto LA5_;
break;
case 16:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_47)) goto LA10_;
break;
case 17:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_49)) goto LA11_;
break;
case 19:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_45)) goto LA9_;
break;
case 20:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_51)) goto LA12_;
break;
case 23:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_53)) goto LA13_;
break;
case 24:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_33)) goto LA3_;
break;
case 25:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_43)) goto LA8_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_67)) goto LA20_;
break;
case 28:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_39)) goto LA6_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_59)) goto LA16_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_61)) goto LA17_;
break;
}
goto LA22_;
LA2_: ;
{
colontmpD__2 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)0);
result = colontmpD__2;
}
goto LA23_;
LA3_: ;
{
colontmpD__3 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)1);
result = colontmpD__3;
}
goto LA23_;
LA4_: ;
{
colontmpD__4 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)2);
result = colontmpD__4;
}
goto LA23_;
LA5_: ;
{
colontmpD__5 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)3);
result = colontmpD__5;
}
goto LA23_;
LA6_: ;
{
colontmpD__6 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)4);
result = colontmpD__6;
}
goto LA23_;
LA7_: ;
{
colontmpD__7 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)5);
result = colontmpD__7;
}
goto LA23_;
LA8_: ;
{
colontmpD__8 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)6);
result = colontmpD__8;
}
goto LA23_;
LA9_: ;
{
colontmpD__9 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)7);
result = colontmpD__9;
}
goto LA23_;
LA10_: ;
{
colontmpD__10 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)8);
result = colontmpD__10;
}
goto LA23_;
LA11_: ;
{
colontmpD__11 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)9);
result = colontmpD__11;
}
goto LA23_;
LA12_: ;
{
colontmpD__12 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)10);
result = colontmpD__12;
}
goto LA23_;
LA13_: ;
{
colontmpD__13 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)11);
result = colontmpD__13;
}
goto LA23_;
LA14_: ;
{
colontmpD__14 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)12);
result = colontmpD__14;
}
goto LA23_;
LA15_: ;
{
colontmpD__15 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)13);
result = colontmpD__15;
}
goto LA23_;
LA16_: ;
{
colontmpD__16 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)14);
result = colontmpD__16;
}
goto LA23_;
LA17_: ;
{
colontmpD__17 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)15);
result = colontmpD__17;
}
goto LA23_;
LA18_: ;
{
colontmpD__18 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)16);
result = colontmpD__18;
}
goto LA23_;
LA19_: ;
{
colontmpD__19 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)17);
result = colontmpD__19;
}
goto LA23_;
LA20_: ;
{
colontmpD__20 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)18);
result = colontmpD__20;
}
goto LA23_;
LA21_: ;
{
colontmpD__21 = ((tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA)19);
result = colontmpD__21;
}
goto LA23_;
LA22_: ;
{
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T45_;
NimStringV2 T46_;
T45_ = NIM_NIL;
T45_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T45_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T45_).Sup.Sup.name = "ValueError";
T46_.len = 0; T46_.p = NIM_NIL;
T46_ = rawNewString(s.len + 20);
appendString((&T46_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_71);
appendString((&T46_), s);
(*T45_).Sup.Sup.message = T46_;
(*T45_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T45_, "ValueError", "parseEnum", "enumutils.nim", 75);
goto LA1_;
}
LA23_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g, parseEnum__commands_1424)(NimStringV2 s) {
tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g result;
NimStringV2 colontmpD_;
tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g colontmpD__2;
tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g colontmpD__3;
tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g colontmpD__4;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2 = (tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)0;
colontmpD__3 = (tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)0;
colontmpD__4 = (tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)0;
colontmpD_ = nimIdentNormalize__pureZstrutils_122(s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_73)) goto LA2_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_75)) goto LA3_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_77)) goto LA4_;
goto LA5_;
LA2_: ;
{
colontmpD__2 = ((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)0);
result = colontmpD__2;
}
goto LA6_;
LA3_: ;
{
colontmpD__3 = ((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)1);
result = colontmpD__3;
}
goto LA6_;
LA4_: ;
{
colontmpD__4 = ((tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g)2);
result = colontmpD__4;
}
goto LA6_;
LA5_: ;
{
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T11_;
NimStringV2 T12_;
T11_ = NIM_NIL;
T11_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T11_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T11_).Sup.Sup.name = "ValueError";
T12_.len = 0; T12_.p = NIM_NIL;
T12_ = rawNewString(s.len + 20);
appendString((&T12_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_78);
appendString((&T12_), s);
(*T11_).Sup.Sup.message = T12_;
(*T11_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T11_, "ValueError", "parseEnum", "enumutils.nim", 75);
goto LA1_;
}
LA6_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NF, nsuParseFloat)(NimStringV2 s) {
NF result;
NI L;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NF)0;
result = 0.0;
L = parseFloat__pureZparseutils_857(s, (&result), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T7_;
NimStringV2 T8_;
T3_ = (NIM_BOOL)0;
T3_ = !((L == s.len));
if (T3_) goto LA4_;
T3_ = (L == ((NI)0));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T7_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T7_).Sup.Sup.name = "ValueError";
T8_.len = 0; T8_.p = NIM_NIL;
T8_ = rawNewString(s.len + 15);
appendString((&T8_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_80);
appendString((&T8_), s);
(*T7_).Sup.Sup.message = T8_;
(*T7_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T7_, "ValueError", "parseFloat", "strutils.nim", 1135);
goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuToBin)(NI64 x, NI len) {
NimStringV2 result;
NU64 mask;
NU64 shift;
result.len = 0; result.p = NIM_NIL;
mask = 1ULL;
shift = 0ULL;
result = mnewString(((NI) (len)));
{
NI j;
NI colontmp_;
NI res;
j = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(((NI) (len)) - ((NI)1));
res = colontmp_;
{
while (1) {
if (!(((NI)0) <= res)) goto LA3 ;
j = res;
nimPrepareStrMutationV2((&result));
result.p->data[j] = ((NIM_CHAR) (((NI) ((NI)(((NI) ((NU64)((NU64)((NU64)(((NU64) (x)) & mask)) >> (NU64)(shift)))) + ((NI)48))))));
shift += ((NI)1);
mask = (NU64)((NU64)(mask) << (NU64)(1ULL));
res -= ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuToOct)(NI64 x, NI len) {
NimStringV2 result;
NU64 mask;
NU64 shift;
result.len = 0; result.p = NIM_NIL;
mask = 7ULL;
shift = 0ULL;
result = mnewString(((NI) (len)));
{
NI j;
NI colontmp_;
NI res;
j = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(((NI) (len)) - ((NI)1));
res = colontmp_;
{
while (1) {
if (!(((NI)0) <= res)) goto LA3 ;
j = res;
nimPrepareStrMutationV2((&result));
result.p->data[j] = ((NIM_CHAR) (((NI) ((NI)(((NI) ((NU64)((NU64)((NU64)(((NU64) (x)) & mask)) >> (NU64)(shift)))) + ((NI)48))))));
shift += ((NI)3);
mask = (NU64)((NU64)(mask) << (NU64)(3ULL));
res -= ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHex__renderer_685)(NI64 x, NI len) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = toHexImpl__pureZstrutils_770(((NU64) (x)), len, (x < IL64(0)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuStrip)(NimStringV2 s, NIM_BOOL leading, NIM_BOOL trailing, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
NimStringV2 result;
NI first;
NI last;
result.len = 0; result.p = NIM_NIL;
first = ((NI)0);
last = (NI)(s.len - ((NI)1));
{
if (!leading) goto LA3_;
{
while (1) {
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (first <= last);
if (!(T7_)) goto LA8_;
T7_ = ((chars[(NU)((((NU8)(s.p->data[first]))))>>3] &(1U<<((NU)((((NU8)(s.p->data[first]))))&7U)))!=0);
LA8_: ;
if (!T7_) goto LA6 ;
first += ((NI)1);
} LA6: ;
}
}
LA3_: ;
{
if (!trailing) goto LA11_;
{
while (1) {
NIM_BOOL T15_;
T15_ = (NIM_BOOL)0;
T15_ = (first <= last);
if (!(T15_)) goto LA16_;
T15_ = ((chars[(NU)((((NU8)(s.p->data[last]))))>>3] &(1U<<((NU)((((NU8)(s.p->data[last]))))&7U)))!=0);
LA16_: ;
if (!T15_) goto LA14 ;
last -= ((NI)1);
} LA14: ;
}
}
LA11_: ;
result = substr__system_7543(s, first, last);
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuRepeatStr)(NimStringV2 s, NI n) {
NimStringV2 result;
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) ((NI)(((NI) (n)) * s.len))));
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = ((NI) (n));
res = ((NI)1);
{
while (1) {
if (!(res <= colontmp_)) goto LA3 ;
i = res;
prepareAdd((&result), s.len + 0);
appendString((&result), s);
res += ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI64, nsuParseBiggestInt)(NimStringV2 s) {
NI64 result;
NI L;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI64)0;
result = IL64(0);
L = parseBiggestInt__pureZparseutils_827(s, (&result), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T7_;
NimStringV2 T8_;
T3_ = (NIM_BOOL)0;
T3_ = !((L == s.len));
if (T3_) goto LA4_;
T3_ = (L == ((NI)0));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T7_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T7_).Sup.Sup.name = "ValueError";
T8_.len = 0; T8_.p = NIM_NIL;
T8_ = rawNewString(s.len + 17);
appendString((&T8_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_81);
appendString((&T8_), s);
(*T7_).Sup.Sup.message = T8_;
(*T7_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T7_, "ValueError", "parseBiggestInt", "strutils.nim", 1103);
goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuIntToStr)(NI x, NI minchars) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = dollar___systemZdollars_3((x > 0? (x) : -(x)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(((NI) (minchars)) - result.len);
res = ((NI)1);
{
while (1) {
NimStringV2 T4_;
if (!(res <= colontmp_)) goto LA3 ;
i = res;
T4_.len = 0; T4_.p = NIM_NIL;
T4_ = rawNewString(result.len + 1);
appendChar((&T4_), 48);
appendString((&T4_), result);
eqsink___stdZassertions_19((&result), T4_);
res += ((NI)1);
} LA3: ;
}
}
{
NimStringV2 T9_;
if (!(x < ((NI)0))) goto LA7_;
T9_.len = 0; T9_.p = NIM_NIL;
T9_ = rawNewString(result.len + 1);
appendChar((&T9_), 45);
appendString((&T9_), result);
eqsink___stdZassertions_19((&result), T9_);
}
LA7_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, parseBool__pureZstrutils_1101)(NimStringV2 s) {
NIM_BOOL result;
NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_ = nsuNormalize(s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
switch (hashString(colontmpD_) & 15) {
case 0:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_85)) goto LA2_;
break;
case 1:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_93)) goto LA3_;
break;
case 2:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_97)) goto LA3_;
break;
case 5:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_87)) goto LA2_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_95)) goto LA3_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_101)) goto LA3_;
break;
case 8:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_83)) goto LA2_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_91)) goto LA2_;
break;
case 9:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_89)) goto LA2_;
break;
case 11:
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_99)) goto LA3_;
break;
}
goto LA4_;
LA2_: ;
{
result = NIM_TRUE;
}
goto LA5_;
LA3_: ;
{
result = NIM_FALSE;
}
goto LA5_;
LA4_: ;
{
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T9_;
NimStringV2 T10_;
T9_ = NIM_NIL;
T9_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T9_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T9_).Sup.Sup.name = "ValueError";
T10_.len = 0; T10_.p = NIM_NIL;
T10_ = rawNewString(s.len + 28);
appendString((&T10_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_103);
appendString((&T10_), s);
(*T9_).Sup.Sup.message = T10_;
(*T9_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T9_, "ValueError", "parseBool", "strutils.nim", 1237);
goto LA1_;
}
LA5_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NU64, nsuParseBiggestUInt)(NimStringV2 s) {
NU64 result;
NI L;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NU64)0;
result = 0ULL;
L = parseBiggestUInt__pureZparseutils_842(s, (&result), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T7_;
NimStringV2 T8_;
T3_ = (NIM_BOOL)0;
T3_ = !((L == s.len));
if (T3_) goto LA4_;
T3_ = (L == ((NI)0));
LA4_: ;
if (!T3_) goto LA5_;
T7_ = NIM_NIL;
T7_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T7_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T7_).Sup.Sup.name = "ValueError";
T8_.len = 0; T8_.p = NIM_NIL;
T8_ = rawNewString(s.len + 26);
appendString((&T8_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_105);
appendString((&T8_), s);
(*T7_).Sup.Sup.message = T8_;
(*T7_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T7_, "ValueError", "parseBiggestUInt", "strutils.nim", 1122);
goto BeforeRet_;
}
LA5_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToUpperAsciiChar)(NIM_CHAR c) {
NIM_CHAR result;
result = (NIM_CHAR)0;
{
if (!(((NU8)(c)) >= ((NU8)(97)) && ((NU8)(c)) <= ((NU8)(122)))) goto LA3_;
result = ((NIM_CHAR) ((NU8)(((NU8) (((NU8)(c)))) ^ ((NU8)32))));
}
goto LA1_;
LA3_: ;
{
result = c;
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ, parseEnum__sem_17439)(NimStringV2 s) {
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ result;
NimStringV2 colontmpD_;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__2;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__3;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__4;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__5;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__6;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__7;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__8;
tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ colontmpD__9;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__3 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__4 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__5 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__6 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__7 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__8 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD__9 = (tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0;
colontmpD_ = nimIdentNormalize__pureZstrutils_122(s);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_107)) goto LA2_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_109)) goto LA3_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_111)) goto LA4_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_113)) goto LA5_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_115)) goto LA6_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_117)) goto LA7_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_119)) goto LA8_;
if (eqStrings(colontmpD_, TM__JGc9b9bh2D3nTdUR7TGyq8aA_121)) goto LA9_;
goto LA10_;
LA2_: ;
{
colontmpD__2 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)0);
result = colontmpD__2;
}
goto LA11_;
LA3_: ;
{
colontmpD__3 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)1);
result = colontmpD__3;
}
goto LA11_;
LA4_: ;
{
colontmpD__4 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)2);
result = colontmpD__4;
}
goto LA11_;
LA5_: ;
{
colontmpD__5 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)3);
result = colontmpD__5;
}
goto LA11_;
LA6_: ;
{
colontmpD__6 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)4);
result = colontmpD__6;
}
goto LA11_;
LA7_: ;
{
colontmpD__7 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)5);
result = colontmpD__7;
}
goto LA11_;
LA8_: ;
{
colontmpD__8 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)6);
result = colontmpD__8;
}
goto LA11_;
LA9_: ;
{
colontmpD__9 = ((tyEnum_TPreferedDesc__bf5goTo3KJxvaEQ7KVg4rQ)7);
result = colontmpD__9;
}
goto LA11_;
LA10_: ;
{
tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw* T21_;
NimStringV2 T22_;
T21_ = NIM_NIL;
T21_ = (tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw*) nimNewObj(sizeof(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw), NIM_ALIGNOF(tyObject_ValueError__ke0esfQKJkTSUu9bpZ7VlFw));
(*T21_).Sup.Sup.Sup.m_type = (&NTIv2__ke0esfQKJkTSUu9bpZ7VlFw_);
(*T21_).Sup.Sup.name = "ValueError";
T22_.len = 0; T22_.p = NIM_NIL;
T22_ = rawNewString(s.len + 20);
appendString((&T22_), TM__JGc9b9bh2D3nTdUR7TGyq8aA_122);
appendString((&T22_), s);
(*T21_).Sup.Sup.message = T22_;
(*T21_).Sup.Sup.parent = ((Exception*) NIM_NIL);
raiseExceptionEx((Exception*)T21_, "ValueError", "parseEnum", "enumutils.nim", 75);
goto LA1_;
}
LA11_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, substrEq__pureZstrutils_255)(NimStringV2 s, NI pos, NimStringV2 substr) {
NIM_BOOL result;
NI i;
NI length;
{ result = (NIM_BOOL)0;
i = ((NI)0);
length = substr.len;
{
while (1) {
NIM_BOOL T3_;
NIM_BOOL T4_;
T3_ = (NIM_BOOL)0;
T4_ = (NIM_BOOL)0;
T4_ = (i < length);
if (!(T4_)) goto LA5_;
T4_ = ((NI)(pos + i) < s.len);
LA5_: ;
T3_ = T4_;
if (!(T3_)) goto LA6_;
T3_ = ((NU8)(s.p->data[(NI)(pos + i)]) == (NU8)(substr.p->data[i]));
LA6_: ;
if (!T3_) goto LA2 ;
i += ((NI)1);
} LA2: ;
}
result = (i == length);
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, nsuSplitString)(NimStringV2 s, NimStringV2 sep, NI maxsplit) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
if (!!((((NI)0) < sep.len))) goto LA3_;
failedAssertImpl__stdZassertions_224(TM__JGc9b9bh2D3nTdUR7TGyq8aA_124);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
result.len = 0; result.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
{
NimStringV2 xX60gensym71_;
NI lastX60gensym40_;
NI splitsX60gensym40_;
xX60gensym71_.len = 0; xX60gensym71_.p = NIM_NIL;
lastX60gensym40_ = ((NI)0);
splitsX60gensym40_ = maxsplit;
{
while (1) {
NI firstX60gensym40_;
NimStringV2 T18_;
NimStringV2 blitTmp;
if (!(lastX60gensym40_ <= s.len)) goto LA8 ;
firstX60gensym40_ = lastX60gensym40_;
{
while (1) {
NIM_BOOL T11_;
NIM_BOOL T13_;
T11_ = (NIM_BOOL)0;
T11_ = (lastX60gensym40_ < s.len);
if (!(T11_)) goto LA12_;
T13_ = (NIM_BOOL)0;
T13_ = substrEq__pureZstrutils_255(s, lastX60gensym40_, sep);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T11_ = !(T13_);
LA12_: ;
if (!T11_) goto LA10 ;
lastX60gensym40_ += ((NI)1);
} LA10: ;
}
{
if (!(splitsX60gensym40_ == ((NI)0))) goto LA16_;
lastX60gensym40_ = s.len;
}
LA16_: ;
T18_.len = 0; T18_.p = NIM_NIL;
T18_ = substr__system_7543(s, firstX60gensym40_, (NI)(lastX60gensym40_ - ((NI)1)));
eqsink___stdZassertions_19((&xX60gensym71_), T18_);
blitTmp = xX60gensym71_;
xX60gensym71_.len = 0; xX60gensym71_.p = NIM_NIL;
add__stdZenumutils_69((&result), blitTmp);
{
if (!(splitsX60gensym40_ == ((NI)0))) goto LA21_;
goto LA7;
}
LA21_: ;
splitsX60gensym40_ -= ((NI)1);
lastX60gensym40_ += sep.len;
} LA8: ;
} LA7: ;
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&xX60gensym71_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuEscape)(NimStringV2 s, NimStringV2 prefix, NimStringV2 suffix) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = rawNewString(((NI) ((NI)(s.len + (NI)((NI32)(s.len) >> (NU32)(((NI)2)))))));
prepareAdd((&result), prefix.len + 0);
appendString((&result), prefix);
{
NIM_CHAR c;
NI i;
NI L;
c = (NIM_CHAR)0;
i = ((NI)0);
L = s.len;
{
while (1) {
if (!(i < L)) goto LA3 ;
c = s.p->data[i];
switch (((NU8)(c))) {
case 0 ... 31:
case 127 ... 255:
{
NimStringV2 colontmpD_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
prepareAdd((&result), 2);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_126);
colontmpD_ = toHex__pureZstrutils_1991(((NU8)(c)), ((NI)2));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
eqdestroy___stdZassertions_13((&colontmpD_));
}
break;
case 92:
{
prepareAdd((&result), 2);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_128);
}
break;
case 39:
{
prepareAdd((&result), 2);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_130);
}
break;
case 34:
{
prepareAdd((&result), 2);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_132);
}
break;
default:
{
nimAddCharV1((&result), c);
}
break;
}
i += ((NI)1);
} LA3: ;
}
}
prepareAdd((&result), suffix.len + 0);
appendString((&result), suffix);
}BeforeRet_: ;
return result;
}
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_1279)(NimStringV2 s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
NimStringV2 result;
NI a;
NI L;
result.len = 0; result.p = NIM_NIL;
a = x.a;
L = (NI)((NI)(x.b - a) + ((NI)1));
result = mnewString(((NI) (L)));
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < L)) goto LA3 ;
i = i_2;
nimPrepareStrMutationV2((&result));
result.p->data[i] = s.p->data[(NI)(i + a)];
i_2 += ((NI)1);
} LA3: ;
}
}
return result;
}
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZstrbasics_49)(NI a, NI b) {
tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
result.a = a;
result.b = b;
return result;
}
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_1307)(NimStringV2 s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
NimStringV2 result;
NI a;
NI L;
result.len = 0; result.p = NIM_NIL;
a = x.a;
L = (NI)((NI)((NI)(s.len - x.b) - a) + ((NI)1));
result = mnewString(((NI) (L)));
{
NI i;
NI i_2;
i = (NI)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < L)) goto LA3 ;
i = i_2;
nimPrepareStrMutationV2((&result));
result.p->data[i] = s.p->data[(NI)(i + a)];
i_2 += ((NI)1);
} LA3: ;
}
}
return result;
}
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_128)(NI a, NI b) {
tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
result.a = a;
result.b = b;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuUnindent)(NimStringV2 s, NI count, NimStringV2 padding) {
NimStringV2 result;
NI i;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = TM__JGc9b9bh2D3nTdUR7TGyq8aA_133;
i = ((NI)0);
{
NimStringV2 line;
NI first;
NI last;
NI eolpos;
line.len = 0; line.p = NIM_NIL;
first = ((NI)0);
last = ((NI)0);
eolpos = ((NI)0);
{
while (1) {
NI colontmpD_;
NI colontmpD__2;
NimStringV2 colontmpD__3;
NI T27_;
NimStringV2 T33_;
NI indentCount;
tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T51_;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
{
while (1) {
NIM_BOOL T8_;
T8_ = (NIM_BOOL)0;
T8_ = (last < s.len);
if (!(T8_)) goto LA9_;
T8_ = !((((NU8)(s.p->data[last])) == ((NU8)(13)) || ((NU8)(s.p->data[last])) == ((NU8)(10))));
LA9_: ;
if (!T8_) goto LA7 ;
last += ((NI)1);
} LA7: ;
}
eolpos = last;
{
if (!(last < s.len)) goto LA12_;
{
if (!((NU8)(s.p->data[last]) == (NU8)(10))) goto LA16_;
last += ((NI)1);
}
goto LA14_;
LA16_: ;
{
if (!((NU8)(s.p->data[last]) == (NU8)(13))) goto LA19_;
last += ((NI)1);
{
NIM_BOOL T23_;
T23_ = (NIM_BOOL)0;
T23_ = (last < s.len);
if (!(T23_)) goto LA24_;
T23_ = ((NU8)(s.p->data[last]) == (NU8)(10));
LA24_: ;
if (!T23_) goto LA25_;
last += ((NI)1);
}
LA25_: ;
}
goto LA14_;
LA19_: ;
LA14_: ;
}
LA12_: ;
T27_ = (NI)0;
{
if (!NIM_FALSE) goto LA30_;
colontmpD_ = (NI)(last - ((NI)1));
T27_ = colontmpD_;
}
goto LA28_;
LA30_: ;
{
colontmpD__2 = (NI)(eolpos - ((NI)1));
T27_ = colontmpD__2;
}
LA28_: ;
T33_.len = 0; T33_.p = NIM_NIL;
T33_ = substr__system_7543(s, first, T27_);
eqsink___stdZassertions_19((&line), T33_);
{
if (!!((i == ((NI)0)))) goto LA36_;
prepareAdd((&result), 1);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_135);
}
LA36_: ;
indentCount = ((NI)0);
{
NI j;
NI colontmp_;
NI i_2;
j = (NI)0;
colontmp_ = (NI)0;
colontmp_ = ((NI) (count));
i_2 = ((NI)0);
{
while (1) {
NI colontmpD__4;
NimStringV2 colontmpD__5;
if (!(i_2 < colontmp_)) goto LA40 ;
colontmpD__4 = (NI)0;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
j = i_2;
indentCount += ((NI)1);
{
NIM_BOOL T44_;
tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T46_;
T44_ = (NIM_BOOL)0;
T44_ = (line.len <= (NI)((NI)(j + padding.len) - ((NI)1)));
if (T44_) goto LA45_;
colontmpD__4 = j;
T46_ = dotdot___stdZstrbasics_49(colontmpD__4, (NI)((NI)(j + padding.len) - ((NI)1)));
colontmpD__5 = X5BX5D___pureZstrutils_1279(line, T46_);
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
T44_ = !(eqStrings(colontmpD__5, padding));
LA45_: ;
if (!T44_) goto LA47_;
indentCount = j;
eqdestroy___stdZassertions_13((&colontmpD__5));
goto LA38;
}
LA47_: ;
i_2 += ((NI)1);
{
LA41_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__5));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
} LA40: ;
}
} LA38: ;
T51_ = dotdot___stdZenumutils_128((NI)(indentCount * padding.len), ((NI)1));
colontmpD__3 = X5BX5D___pureZstrutils_1307(line, T51_);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
prepareAdd((&result), colontmpD__3.len + 0);
appendString((&result), colontmpD__3);
i += ((NI)1);
{
if (!(eolpos == last)) goto LA54_;
eqdestroy___stdZassertions_13((&colontmpD__3));
goto LA3;
}
LA54_: ;
first = last;
{
LA5_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
}
} LA3: ;
{
LA2_:;
}
{
eqdestroy___stdZassertions_13((&line));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuDedent)(NimStringV2 s, NI count) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = nsuUnindent(s, count, TM__JGc9b9bh2D3nTdUR7TGyq8aA_137);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, indentation__pureZstrutils_1331)(NimStringV2 s) {
NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
result = ((NI)2147483647);
{
NimStringV2 line;
NI first;
NI last;
NI eolpos;
line.len = 0; line.p = NIM_NIL;
first = ((NI)0);
last = ((NI)0);
eolpos = ((NI)0);
{
while (1) {
NI colontmpD_;
NI colontmpD__2;
NI T26_;
NimStringV2 T32_;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
{
while (1) {
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (last < s.len);
if (!(T7_)) goto LA8_;
T7_ = !((((NU8)(s.p->data[last])) == ((NU8)(13)) || ((NU8)(s.p->data[last])) == ((NU8)(10))));
LA8_: ;
if (!T7_) goto LA6 ;
last += ((NI)1);
} LA6: ;
}
eolpos = last;
{
if (!(last < s.len)) goto LA11_;
{
if (!((NU8)(s.p->data[last]) == (NU8)(10))) goto LA15_;
last += ((NI)1);
}
goto LA13_;
LA15_: ;
{
if (!((NU8)(s.p->data[last]) == (NU8)(13))) goto LA18_;
last += ((NI)1);
{
NIM_BOOL T22_;
T22_ = (NIM_BOOL)0;
T22_ = (last < s.len);
if (!(T22_)) goto LA23_;
T22_ = ((NU8)(s.p->data[last]) == (NU8)(10));
LA23_: ;
if (!T22_) goto LA24_;
last += ((NI)1);
}
LA24_: ;
}
goto LA13_;
LA18_: ;
LA13_: ;
}
LA11_: ;
T26_ = (NI)0;
{
if (!NIM_FALSE) goto LA29_;
colontmpD_ = (NI)(last - ((NI)1));
T26_ = colontmpD_;
}
goto LA27_;
LA29_: ;
{
colontmpD__2 = (NI)(eolpos - ((NI)1));
T26_ = colontmpD__2;
}
LA27_: ;
T32_.len = 0; T32_.p = NIM_NIL;
T32_ = substr__system_7543(s, first, T26_);
eqsink___stdZassertions_19((&line), T32_);
{
NI i;
NIM_CHAR c;
NI i_2;
NI L;
i = (NI)0;
c = (NIM_CHAR)0;
i_2 = ((NI)0);
L = line.len;
{
while (1) {
if (!(i_2 < L)) goto LA35 ;
i = i_2;
c = line.p->data[i_2];
{
if (!(((NI) (result)) <= i)) goto LA38_;
goto LA33;
}
goto LA36_;
LA38_: ;
{
if (!!(((NU8)(c) == (NU8)(32)))) goto LA41_;
result = ((NI) (i));
goto LA33;
}
goto LA36_;
LA41_: ;
LA36_: ;
i_2 += ((NI)1);
} LA35: ;
}
} LA33: ;
{
if (!(eolpos == last)) goto LA45_;
goto LA3;
}
LA45_: ;
first = last;
}
} LA3: ;
{
LA2_:;
}
{
eqdestroy___stdZassertions_13((&line));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
{
if (!(((NI) (result)) == ((NI)2147483647))) goto LA51_;
result = ((NI)0);
}
LA51_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuIsDigitChar)(NIM_CHAR c) {
NIM_BOOL result;
{ result = (NIM_BOOL)0;
result = (((NU8)(c)) >= ((NU8)(48)) && ((NU8)(c)) <= ((NU8)(57)));
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, delete__pureZstrutils_1353)(NimStringV2* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA slice) {
{
NI i;
NI j;
NI newLen;
if (!(slice.a <= slice.b)) goto LA3_;
i = slice.a;
j = (NI)(slice.b + ((NI)1));
newLen = (NI)((NI)((*s).len - j) + i);
{
while (1) {
if (!(i < newLen)) goto LA6 ;
nimPrepareStrMutationV2((&(*s)));
(*s).p->data[i] = (*s).p->data[j];
i += ((NI)1);
j += ((NI)1);
} LA6: ;
}
setLengthStrV2((&(*s)), ((NI) (newLen)));
}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuIsUpperAsciiChar)(NIM_CHAR c) {
NIM_BOOL result;
{ result = (NIM_BOOL)0;
result = (((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(90)));
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuCapitalizeAscii)(NimStringV2 s) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
if (!(s.len == ((NI)0))) goto LA3_;
result = TM__JGc9b9bh2D3nTdUR7TGyq8aA_138;
}
goto LA1_;
LA3_: ;
{
NimStringV2 colontmpD_;
NimStringV2 T6_;
NIM_CHAR T7_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T6_.len = 0; T6_.p = NIM_NIL;
T7_ = (NIM_CHAR)0;
T7_ = nsuToUpperAsciiChar(s.p->data[((NI)0)]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
colontmpD_ = substr__system_7555(s, ((NI)1));
T6_ = rawNewString(colontmpD_.len + 1);
appendChar((&T6_), T7_);
appendString((&T6_), colontmpD_);
result = T6_;
eqdestroy___stdZassertions_13((&colontmpD_));
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, nsuCountLines)(NimStringV2 s) {
NI result;
NI i;
result = (NI)0;
result = ((NI)1);
i = ((NI)0);
{
while (1) {
if (!(i < s.len)) goto LA2 ;
switch (((NU8)(s.p->data[i]))) {
case 13:
{
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = ((NI)(i + ((NI)1)) < s.len);
if (!(T6_)) goto LA7_;
T6_ = ((NU8)(s.p->data[(NI)(i + ((NI)1))]) == (NU8)(10));
LA7_: ;
if (!T6_) goto LA8_;
i += ((NI)1);
}
LA8_: ;
result += ((NI)1);
}
break;
case 10:
{
result += ((NI)1);
}
break;
default:
{
}
break;
}
i += ((NI)1);
} LA2: ;
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuAlignString)(NimStringV2 s, NI count, NIM_CHAR padding) {
NimStringV2 result;
result.len = 0; result.p = NIM_NIL;
{
NI spaces;
if (!(s.len < ((NI) (count)))) goto LA3_;
result = mnewString(count);
spaces = (NI)(((NI) (count)) - s.len);
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = (NI)(spaces - ((NI)1));
res = ((NI)0);
{
while (1) {
if (!(res <= colontmp_)) goto LA7 ;
i = res;
nimPrepareStrMutationV2((&result));
result.p->data[i] = padding;
res += ((NI)1);
} LA7: ;
}
}
{
NI i_2;
NI colontmp__2;
NI res_2;
i_2 = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = (NI)(((NI) (count)) - ((NI)1));
res_2 = spaces;
{
while (1) {
if (!(res_2 <= colontmp__2)) goto LA10 ;
i_2 = res_2;
nimPrepareStrMutationV2((&result));
result.p->data[i_2] = s.p->data[(NI)(i_2 - spaces)];
res_2 += ((NI)1);
} LA10: ;
}
}
}
goto LA1_;
LA3_: ;
{
eqcopy___stdZassertions_16((&result), s);
}
LA1_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuformatBiggestFloat)(NF f, tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ format, NI precision, NIM_CHAR decimalSep) {
NimStringV2 result;
tyArray__9bPFPkkEEeeNM9bKgiV8Q49cg frmtstr;
tyArray__Kn8ZOVsorvcNLB4isUeMzQ buf;
int L;
result.len = 0; result.p = NIM_NIL;
L = (int)0;
frmtstr[(((NI)0))- 0] = 37;
{
if (!(((NI)0) <= ((NI) (precision)))) goto LA3_;
frmtstr[(((NI)1))- 0] = 35;
frmtstr[(((NI)2))- 0] = 46;
frmtstr[(((NI)3))- 0] = 42;
frmtstr[(((NI)4))- 0] = floatFormatToChar__pureZstrutils_2067[(format)- 0];
frmtstr[(((NI)5))- 0] = 0;
L = sprintf(((NCSTRING) (buf)), ((NCSTRING) (frmtstr)), precision, f);
}
goto LA1_;
LA3_: ;
{
frmtstr[(((NI)1))- 0] = floatFormatToChar__pureZstrutils_2067[(format)- 0];
frmtstr[(((NI)2))- 0] = 0;
L = sprintf(((NCSTRING) (buf)), ((NCSTRING) (frmtstr)), f);
}
LA1_: ;
result = mnewString(((NI) (L)));
{
NI32 i;
NI32 res;
i = (NI32)0;
res = ((NI32)0);
{
while (1) {
if (!(res < L)) goto LA8 ;
i = res;
{
if (!(((NU8)(buf[(i)- 0])) == ((NU8)(46)) || ((NU8)(buf[(i)- 0])) == ((NU8)(44)))) goto LA11_;
nimPrepareStrMutationV2((&result));
result.p->data[i] = decimalSep;
}
goto LA9_;
LA11_: ;
{
nimPrepareStrMutationV2((&result));
result.p->data[i] = buf[(i)- 0];
}
LA9_: ;
res += ((NI)1);
} LA8: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuformatFloat)(NF f, tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ format, NI precision, NIM_CHAR decimalSep) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = nsuformatBiggestFloat(f, format, precision, decimalSep);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, trimZeros__pureZstrutils_2178)(NimStringV2* x, NIM_CHAR decimalSep) {
NI sPos;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
sPos = nsuFindChar((*x), decimalSep, ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NI colontmpD_;
NI colontmpD__2;
NI last;
NI pos;
if (!(((NI)0) <= sPos)) goto LA3_;
colontmpD_ = (NI)0;
colontmpD__2 = (NI)0;
last = nsuFindChar((*x), 101, ((NI) (sPos)), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(((NI)0) <= last)) goto LA7_;
colontmpD_ = (NI)(last - ((NI)1));
last = colontmpD_;
}
goto LA5_;
LA7_: ;
{
colontmpD__2 = ((*x).len-1);
last = colontmpD__2;
}
LA5_: ;
pos = last;
{
while (1) {
NIM_BOOL T12_;
T12_ = (NIM_BOOL)0;
T12_ = (((NI)0) <= pos);
if (!(T12_)) goto LA13_;
T12_ = ((NU8)((*x).p->data[pos]) == (NU8)(48));
LA13_: ;
if (!T12_) goto LA11 ;
pos -= ((NI)1);
} LA11: ;
}
{
if (!(sPos < pos)) goto LA16_;
pos += ((NI)1);
}
LA16_: ;
{
tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T22_;
if (!(pos <= last)) goto LA20_;
T22_ = dotdot___stdZstrbasics_49(pos, last);
delete__pureZstrutils_1353(x, T22_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA20_: ;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, formatSize__pureZstrutils_2205)(NI64 bytes, NIM_CHAR decimalSep, tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA prefix, NIM_BOOL includeSpace) {
NimStringV2 result;
tyArray__17w6ns39bmjfAZ429aQpCFUA prefixes;
NI64 xb;
NF fbytes;
NI64 lastXb;
NI matchedIndex;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
nimZeroMem((void*)prefixes, sizeof(tyArray__17w6ns39bmjfAZ429aQpCFUA));
xb = bytes;
fbytes = (NF)0;
lastXb = bytes;
matchedIndex = ((NI)0);
{
if (!(prefix == ((tyEnum_BinaryPrefixMode__nDtrM19b3byM8T9ab2m7BwvA)1))) goto LA3_;
nimCopyMem((void*)prefixes, (NIM_CONST void*)collPrefixes__pureZstrutils_2212, sizeof(tyArray__17w6ns39bmjfAZ429aQpCFUA));
}
goto LA1_;
LA3_: ;
{
nimCopyMem((void*)prefixes, (NIM_CONST void*)iecPrefixes__pureZstrutils_2211, sizeof(tyArray__17w6ns39bmjfAZ429aQpCFUA));
}
LA1_: ;
{
NI index;
NI i;
index = (NI)0;
i = ((NI)1);
{
while (1) {
if (!(i < ((NI)9))) goto LA8 ;
index = i;
lastXb = xb;
xb = (NI64)(bytes / (NI64)((NU64)(IL64(1)) << (NU64)((NI)(index * ((NI)10)))));
matchedIndex = index;
{
if (!(xb == IL64(0))) goto LA11_;
xb = lastXb;
matchedIndex = (NI)(index - ((NI)1));
goto LA6;
}
LA11_: ;
i += ((NI)1);
} LA8: ;
}
} LA6: ;
fbytes = ((NF)(((NF) (bytes))) / (NF)(((NF) ((NI64)((NU64)(IL64(1)) << (NU64)((NI)(matchedIndex * ((NI)10))))))));
result = nsuformatFloat(fbytes, ((tyEnum_FloatFormatMode__pNvEoaqwoxKyoASD11vSgQ)1), ((NI)3), decimalSep);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
trimZeros__pureZstrutils_2178((&result), decimalSep);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!includeSpace) goto LA15_;
prepareAdd((&result), 1);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_155);
}
LA15_: ;
prepareAdd((&result), prefixes[(matchedIndex)- 0].len + 0);
appendString((&result), prefixes[(matchedIndex)- 0]);
prepareAdd((&result), 1);
appendString((&result), TM__JGc9b9bh2D3nTdUR7TGyq8aA_157);
}BeforeRet_: ;
return result;
}