summaryrefslogtreecommitdiff
path: root/src/colm.lm
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@complang.org>2014-12-07 16:50:49 -0500
committerAdrian Thurston <thurston@complang.org>2014-12-07 16:50:49 -0500
commit1de6249aa3c481e5ff582b95dac49c8fbf04f8c9 (patch)
tree0fc1a8509c7d8e42dbbb4e83bff619e4870acb2b /src/colm.lm
parente1b207d6d2642d545f151429d9ffd662d6a82494 (diff)
downloadcolm-1de6249aa3c481e5ff582b95dac49c8fbf04f8c9.tar.gz
start on the object-based list implementation (list2)
Diffstat (limited to 'src/colm.lm')
-rw-r--r--src/colm.lm10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/colm.lm b/src/colm.lm
index d916e0a4..a821abeb 100644
--- a/src/colm.lm
+++ b/src/colm.lm
@@ -28,7 +28,11 @@ lex
token IN / 'in' /
token PARSER / 'parser' | 'accum' /
token LIST / 'list' /
+ token LIST2 / 'list2' /
+ token LIST2EL / 'list2el' /
token MAP / 'map' /
+ token MAP2 / 'map2' /
+ token MAP2EL / 'map2el' /
token PTR / 'ptr' /
token ITER / 'iter' /
token REF / 'ref' /
@@ -553,9 +557,13 @@ def code_factor
def type_ref
[region_qual id opt_repeat] :Id
| [PTR LT region_qual id opt_repeat GT] :Ptr
-| [MAP LT MapKeyType: type_ref MapValueType: type_ref GT] :Map
| [LIST LT type_ref GT] :List
+| [MAP LT MapKeyType: type_ref MapValueType: type_ref GT] :Map
| [PARSER LT type_ref GT] :Parser
+| [LIST2EL LT type_ref GT] :List2El
+| [LIST2 LT type_ref GT] :List2
+| [MAP2EL LT type_ref GT] :Map2El
+| [MAP2 LT type_ref GT] :Map2
def region_qual
[region_qual id DOUBLE_COLON] :Qual