summaryrefslogtreecommitdiffstats
path: root/parser.l
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-11-07 20:50:20 -0800
committerKaz Kylheku <kaz@kylheku.com>2016-11-07 20:50:20 -0800
commita2ea64e158ad9be884482747b45a90e27579f9f1 (patch)
treeaa4640188bcd4e4d9320f1eb9302452c3892599d /parser.l
parent4af3611c835e9b6acb979987568f46ba86ef52e7 (diff)
downloadtxr-a2ea64e158ad9be884482747b45a90e27579f9f1.tar.gz
txr-a2ea64e158ad9be884482747b45a90e27579f9f1.tar.bz2
txr-a2ea64e158ad9be884482747b45a90e27579f9f1.zip
Support #: reading for uninterned symbols.
* parser.l (BTKEY, NTKEY): Renamed to BTKWUN and NTKWUN ("keyword and uninterned") respectively. Include an optional match for the # character. (BTOK, NTOK): Refer to BTKEY and NTKEY respectively * parser.y (sym_helper): Implement uninterned symbols by detecting when the package name string is "#" and handling specially. * txr.1: Documented package prefixes and uninterned symbols.
Diffstat (limited to 'parser.l')
-rw-r--r--parser.l8
1 files changed, 4 insertions, 4 deletions
diff --git a/parser.l b/parser.l
index 28e0d1d2..cff641ae 100644
--- a/parser.l
+++ b/parser.l
@@ -206,14 +206,14 @@ BT0 {BSCHR}({BSCHR}|{EXTRA})*
BT1 @{BT0}+
BT2 ({BSCHR}|{EXTRA})+
BTREG ({BT0}|{BT1})?:{BT2}?|({BT0}|{BT1})(:{BT2})?
-BTKEY @?:{BT2}?
-BTOK {BTREG}|{BTKEY}
+BTKWUN @?#?:{BT2}?
+BTOK {BTREG}|{BTKWUN}
NT0 {NSCHR}({NSCHR}|{EXTRA})*
NT1 @{NT0}+
NT2 ({NSCHR}|{EXTRA})+
NTREG ({NT0}|{NT1})?:{NT2}?|({NT0}|{NT1})(:{NT2})?
-NTKEY @?:{NT2}?
-NTOK {NTREG}|{NTKEY}
+NTKWUN @?#?:{NT2}?
+NTOK {NTREG}|{NTKWUN}
WS [\t ]*
REQWS [\t ]+
NL (\n|\r|\r\n)