on 492ae2f help sign in
47 lines 784 B history raw
1### `++shim`
3Char in range
5Match characters (`++char`) within a range.
7Accepts
8-------
10`les` is an atom.
12`mos` is an atom.
14Produces
15--------
17A `++rule`.
19Source
20------
22 ++ shim :: match char in range
23 ~/ %shim
24 |= {les/@ mos/@}
25 ~/ %fun
26 |= tub/nail
27 ^- (like char)
28 ?~ q.tub
29 (fail tub)
30 ?. ?&((gte i.q.tub les) (lte i.q.tub mos))
31 (fail tub)
32 (next tub)
33 ::
35Examples
36--------
38 ~zod/try=> ((shim 'a' 'z') [[1 1] "abc"])
39 [p=[p=1 q=2] q=[~ [p=~~a q=[p=[p=1 q=2] q="bc"]]]]
40 ~zod/try=> ((shim 'a' 'Z') [[1 1] "abc"])
41 [p=[p=1 q=1] q=~]
42 ~zod/try=> ((shim 'a' 'Z') [[1 1] "Abc"])
43 [p=[p=1 q=2] q=[~ [p=~~~41. q=[p=[p=1 q=2] q="bc"]]]]
47***