aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2020-10-06 17:04:46 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2020-10-06 19:48:40 -0400
commitbded0674bdc8ba3ae7cfca71a2eb62a71cd81d5d (patch)
tree9ed4e5f2e6b96681853911db4ad04bbd82921764 /src
parent8cb1b000e3ac20e4a7651a17dee47141b1c0f58f (diff)
Full expression role detection
Diffstat (limited to 'src')
-rw-r--r--src/c.bqn5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/c.bqn b/src/c.bqn
index 8ab46b12..e0878623 100644
--- a/src/c.bqn
+++ b/src/c.bqn
@@ -126,7 +126,10 @@ Parse ← {r‿nv←𝕨
fsc←ft⊏⥊3‿5‿6-⌜3‿0
pt←cp∧sn←¬sl∨sr
r↩sl-˜sn×((1↓ft)⊏(1+2⊸≤)⊸/↕4)⌾((b⊏rev)⊸⊏)r
- r+↩pt(⊣∧≤=○I1T⊢)(»⌾(g⊸⊏)3=r)∨1≤r
+ pp←pt∧»no←»⌾(g⊸⊏)r<0
+ er←((»⌾(g⊸⊏)(1+no)×3=⊢)⌈⊢-no<2≤⊢)r+pp×(IT¬pp)⊏r
+ er⌈↩(IT¬pt∧er=0)((⊏-⊢)⟜(+`¬pp)(⊢⌊1⌈+)⊏)er
+ r+↩pt×»er
id←/idm←(0⊸≤∧<⟜nv)xv←𝕩-vi⋄idx←id⊏𝕩⋄sp←/𝕩 M bI
ad←𝕩(=>○IT⊣=1+⊢)⊑bG