Convert a parsed Backolon pattern block into an internal pattern Thing.
pattern syntax:
<one space>
<two spaces>
<three spaces>
<newline>
x
x ...
x ... [+]
[+]
+
(x)
{x|y}
y
[x(stuff)]
[x: roundblock]
[=xyz]
[^]
[$]
Convert a parsed Backolon pattern block into an internal pattern Thing.
pattern syntax:
<one space>--> any amount (zero or more) of spaces or newlines<two spaces>--> any amount (zero or more) of spaces, but no newlines<three spaces>--> one or more spaces (space is required) without newlines<newline>--> newline literalx--> wildcard capture of any element named xx ...--> repeatx(lazy)x ... [+]--> repeatx(greedy) where[+]is a square bracket containing+(x)--> grouping (parenthesised pattern){x|y}--> alternation (eitherxory)[x(stuff)]--> capture name with subpattern[x: roundblock]--> type match & capture[=xyz]--> literal match (can be symbol, number, string)[^]and[$]--> anchors