aboutsummaryrefslogtreecommitdiff
path: root/src/c.bqn
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2020-09-25 12:17:20 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2020-09-25 12:17:20 -0400
commit01acb6a8f130c07b2c042aacf32c1f1b15fa30a9 (patch)
tree9c8de536137203d8f0310f8ad838146e25895e3a /src/c.bqn
parent16051f172125548e54d6c4bcfe9050672cf2e25c (diff)
Simplify literal handling
Diffstat (limited to 'src/c.bqn')
-rw-r--r--src/c.bqn10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/c.bqn b/src/c.bqn
index 27ca7297..04e41112 100644
--- a/src/c.bqn
+++ b/src/c.bqn
@@ -34,14 +34,14 @@ Tokenize←{
g←⍋q←∾⟨ s⋄¯1↓d⋄/r⟩ ⋄q↩g⊏q
e← g⊏∾⟨2+s⋄ 1↓d⋄-⟜»∘⊏⟜(0∾+`r)⊸//(𝕩=lf)∾1⟩
Se←{(⊏˜𝕨)Se 1¨⌾((𝕩/𝕨)⊸⊏)𝕩}⍟{0=¯1⊑𝕩}
- st←¯1↓Se⟜(1↑˜≠)∾⟜≠q⍋e⋄q/˜↩st⋄e/˜↩st
- n←≠𝕩⋄a←n↑/⁼q⋄b←n↑/⁼e
- f←¬(≠`a∨b)∨«qe←a∧»⊸∧dm
+ St←(≠𝕩)↑·/⁼((≠↑∾⟜≠Se 1∾0¨)q⍋e)⊸/
+ a←St q⋄b←St e⋄f←¬≠`ab←a∨b
"Unclosed quote"!¬∨´(sm∨dm)∧b<f
u←f∧𝕩='@'⋄ci←/u∨»a∧sm
- chr←(ci⊏𝕩)-(ci⊏u)×'@'-@
- str←1↓¨𝕩⊔˜1-˜(+`si←dm∧a>qe)×≠`dm∧a∨b
+ chr←(⊏⟜𝕩-('@'-@)×⊏⟜u)ci
+ f>↩qe←dm∧«a∧↩dm
+ str←1↓¨𝕩⊔˜1-˜(+`si←a>»qe)×≠`dm∧ab
c←CharCode f/𝕩
w←»⊸<l←c M bD(⊣≍-˜)○⊑bW⋄us←c=¯1++´bA