1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
/* Generated by Nim Compiler v0.16.0 */
/* (c) 2017 Andreas Rumpf */
/* The generated code is subject to the original license. */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <string.h>
#include <unistd.h>
#include <stdio.h>
#undef linux
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef NU8 Style_NXKayqTLMsAibFwNceBlpA_Set;
typedef NU8 Style_NXKayqTLMsAibFwNceBlpA;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU8 Foregroundcolor_ez9ah4IgQc0AbdW68acioDg;
N_NIMCALL(void, write_c4mGyJBvK73pdM22jiweKQ)(FILE* f0, NimStringDesc* s0);
static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0);
static N_INLINE(void, copymem_E1xtACub5WcDa3vbrIXbwgsystem)(void* dest0, void* source0, NI size0);
N_NIMCALL(NimStringDesc*, nimIntToStr)(NI x0);
static N_INLINE(void, appendChar)(NimStringDesc* dest0, NIM_CHAR c0);
N_NIMCALL(NimStringDesc*, rawNewString)(NI space0);
N_NIMCALL(int, getfilehandle_bZ9c2yojtXoDTUpfyl8h8Rg)(FILE* f0);
NI gfg_g7w4T3anr20OMlWloNx2tQ;
NI gbg_dgmeknpHWrtwqMJGQAp9atA;
STRING_LITERAL(T_CN3raB9atujkEiPpxYAdlgQ_2, "\033[", 2);
STRING_LITERAL(T_CN3raB9atujkEiPpxYAdlgQ_3, "\033[0m", 4);
static N_INLINE(void, copymem_E1xtACub5WcDa3vbrIXbwgsystem)(void* dest0, void* source0, NI size0) {
void* LOC1;
LOC1 = (void*)0;
LOC1 = memcpy(dest0, source0, ((size_t) (size0)));
}
static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0) {
copymem_E1xtACub5WcDa3vbrIXbwgsystem(((void*) ((&(*dest0).data[((*dest0).Sup.len)- 0]))), ((void*) ((*src0).data)), ((NI) ((NI)((*src0).Sup.len + ((NI) 1)))));
(*dest0).Sup.len += (*src0).Sup.len;
}
static N_INLINE(void, appendChar)(NimStringDesc* dest0, NIM_CHAR c0) {
(*dest0).data[((*dest0).Sup.len)- 0] = c0;
(*dest0).data[((NI)((*dest0).Sup.len + ((NI) 1)))- 0] = 0;
(*dest0).Sup.len += ((NI) 1);
}
N_NIMCALL(void, setstyle_zEKKPPIjKZs9bVYu4TwenLg)(FILE* f0, Style_NXKayqTLMsAibFwNceBlpA_Set style0) {
{
Style_NXKayqTLMsAibFwNceBlpA s_FZtpHAjVRzoXQLsd0ruPvQ;
NI i_BlOmMRII9bmWVWIFwYK5XdQ;
s_FZtpHAjVRzoXQLsd0ruPvQ = (Style_NXKayqTLMsAibFwNceBlpA)0;
i_BlOmMRII9bmWVWIFwYK5XdQ = ((NI) 1);
{
while (1) {
if (!(i_BlOmMRII9bmWVWIFwYK5XdQ <= ((NI) 8))) goto LA3;
{
NimStringDesc* LOC8;
NimStringDesc* LOC9;
if (!((style0 &(1U<<((NU)((((Style_NXKayqTLMsAibFwNceBlpA) (i_BlOmMRII9bmWVWIFwYK5XdQ))- 1))&7U)))!=0)) goto LA6;
s_FZtpHAjVRzoXQLsd0ruPvQ = ((Style_NXKayqTLMsAibFwNceBlpA) (i_BlOmMRII9bmWVWIFwYK5XdQ));
LOC8 = (NimStringDesc*)0;
LOC9 = (NimStringDesc*)0;
LOC9 = nimIntToStr(((NI) (s_FZtpHAjVRzoXQLsd0ruPvQ)));
LOC8 = rawNewString(LOC9->Sup.len + 3);
appendString(LOC8, ((NimStringDesc*) &T_CN3raB9atujkEiPpxYAdlgQ_2));
appendString(LOC8, LOC9);
appendChar(LOC8, 109);
write_c4mGyJBvK73pdM22jiweKQ(f0, LOC8);
}
LA6: ;
i_BlOmMRII9bmWVWIFwYK5XdQ += ((NI) 1);
} LA3: ;
}
}
}
N_NIMCALL(void, resetattributes_tFIu39aFSR3N0M64Ynwugng)(FILE* f0) {
write_c4mGyJBvK73pdM22jiweKQ(f0, ((NimStringDesc*) &T_CN3raB9atujkEiPpxYAdlgQ_3));
}
N_NIMCALL(void, setforegroundcolor_Tw7yxMupneOmAicqiYt3NA)(FILE* f0, Foregroundcolor_ez9ah4IgQc0AbdW68acioDg fg0, NIM_BOOL bright0) {
NimStringDesc* LOC5;
NimStringDesc* LOC6;
gfg_g7w4T3anr20OMlWloNx2tQ = ((NI) (fg0));
{
if (!bright0) goto LA3;
gfg_g7w4T3anr20OMlWloNx2tQ += ((NI) 60);
}
LA3: ;
LOC5 = (NimStringDesc*)0;
LOC6 = (NimStringDesc*)0;
LOC6 = nimIntToStr(gfg_g7w4T3anr20OMlWloNx2tQ);
LOC5 = rawNewString(LOC6->Sup.len + 3);
appendString(LOC5, ((NimStringDesc*) &T_CN3raB9atujkEiPpxYAdlgQ_2));
appendString(LOC5, LOC6);
appendChar(LOC5, 109);
write_c4mGyJBvK73pdM22jiweKQ(f0, LOC5);
}
N_NIMCALL(NIM_BOOL, isatty_POoHvosCWg3Yl5ieYeLHrg)(FILE* f0) {
NIM_BOOL result0;
int LOC1;
int LOC2;
result0 = (NIM_BOOL)0;
LOC1 = (int)0;
LOC1 = getfilehandle_bZ9c2yojtXoDTUpfyl8h8Rg(f0);
LOC2 = (int)0;
LOC2 = isatty(LOC1);
result0 = !((LOC2 == ((NI32) 0)));
return result0;
}
NIM_EXTERNC N_NOINLINE(void, stdlib_terminalInit000)(void) {
gfg_g7w4T3anr20OMlWloNx2tQ = ((NI) 0);
gbg_dgmeknpHWrtwqMJGQAp9atA = ((NI) 0);
}
NIM_EXTERNC N_NOINLINE(void, stdlib_terminalDatInit000)(void) {
}
|