From 8faa02f7f7081d8141f682111c0196b1028eb63d Mon Sep 17 00:00:00 2001 From: Aidan Hahn Date: Sat, 16 Nov 2019 16:16:05 -0800 Subject: [PATCH] good restructure: less code --- pkg/shsh/.token.go.swp | Bin 0 -> 12288 bytes pkg/shsh/token.go | 45 ++++++++++++++++++++--------------------- 2 files changed, 22 insertions(+), 23 deletions(-) create mode 100644 pkg/shsh/.token.go.swp diff --git a/pkg/shsh/.token.go.swp b/pkg/shsh/.token.go.swp new file mode 100644 index 0000000000000000000000000000000000000000..95b314d736d4e613493868cb3623a5261ecca31c GIT binary patch literal 12288 zcmeI2&2Jnv7{(na2cQ8&IUs?+q*C`o>23;_DyT@HKowCEv{{NO+HSowo?R<5o{{ZI zyHqJTasa`lM?l=*hy;Qo;xFg{@gZ>lRfr>SLE^^a@yyO{6+*9oE&Vbde*OCKV~>?6 z9s)I_xMm&z0JSfK2U8@pyH~1A3 z#AzOO`#j0IdaTFYYTL zE4SO)$9V_51Kt7efOo(<;2rP|cn7=#{{aU~wm{y%IPNINvR+;nZn>6^{^A|*4tNK= z1Kt7efOo(<;2rP|cn7=#-U08xzt8~|67tC1guHeS#N+?})!+ZW-%rSI;1}>c_!fKv zJ_DbEPr!As1A5>ncpMxChrrGI2>A+p2=>4=unPn@2Tp?(&;iH6GFSwE;M~E_;A`*& zcptn6UI!sK4Laaaa0uK9emzXc4e$|o6J#I-7r`^&G4K#L0{*<0knh0f-~(_SyaV0_ zZvhQn1P_Co@Z=}(Blr@04EDeUVEsA|&H!J$1Kt7efOo(<;2rP|{LdWNB^0IGrS@ib zrd010H@TA3D9&jb(MU)Z)4o0BsjHAJkz}!mCN#~sVn(D=(~$FwYlC>DO%?cpkl{=a ziE-y+kWsap?|zs^1EB|@ zP-cQ`M&@=A7XAO7rdF+~2yQeRt8*$V^>(Dw3Kx35(O9O9 zCHv#jOe=j^m|#q81I#uCN+Y|TQoZcnt)8Na$&p=IS#IoturYIPAf%q(9pu5_sV)Yu zJJ01J4sl%DwsPtaUYTptP&^;Q*H}d0O6`jocZ!cG=2x07qtnrHpQ@EpeoUqFLLz0v z0)Evk6vIZeSk?pF6W4DAHAsTDl!44Wp8d4f!ublb!U po$i#>PFuOaox_AUW0%U6u|%-F;xIqPNHP{|_inner = tok.String() - iter_alloced = true + case '\'', '"', '`': + delim = char case '(': - // match paren + delim = ')' + + case delim: *iter = new(Token) - (*iter)->_inner = lex(tok.String()) + *iter._inner = tok.String() iter_alloced = true - case ')': - // SHOULDNT HAPPEN + delim = ' ' + default: tok.WriteRune(char) buf_is_dirty = true } if iter_alloced { - iter = &(*iter)->next + iter = &(*iter.next) iter_alloced = false - // clear buffer + tok.Reset() } } } @@ -67,7 +66,7 @@ func parse(Token *arg) { // Determine if a list is an operation or a list } -func eval(Token *tree) Token* { +func eval(Token *tree) *Token { // Find operations // Simplify operations deepest first // return tree of final Tokens