5 ++ stew :: switch by first char
7 |* leh/(list {p/?(@ {@ @}) q/rule}) :: char+range keys
8 =+ ^= wor :: range complete lth
9 |= {ort/?(@ {@ @}) wan/?(@ {@ @})}
11 ?@(wan (lth ort wan) (lth ort -.wan))
12 ?@(wan (lth +.ort wan) (lth +.ort -.wan))
13 =+ ^= hel :: build parser map
14 =+ hel=`(tree _?>(?=(^ leh) i.leh))`~
22 ?: (wor p.i.leh p.n.yal)
25 ?: (vor p.n.yal p.n.nuc)
27 [n.nuc l.nuc [n.yal r.nuc r.yal]]
30 ?: (vor p.n.yal p.n.nuc)
32 [n.nuc [n.yal l.yal l.nuc] r.nuc]
42 ?&((gte i.q.tub -.p.n.hel) (lte i.q.tub +.p.n.hel))
43 :: (q.n.hel [(lust i.q.tub p.tub) t.q.tub])
45 ?: (wor i.q.tub p.n.hel)
52Parser generator. From an associative `++list` of characters or character
53ranges to `++rule`s, construct a `++map`, and parse `++tape`s only
54with `++rules` associated with a range that the `++tape`'s first character falls in.
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list