From 4394c9a8dbe4324f84a11d3e4570076ff30b43d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Pluta?= Date: Fri, 12 Jul 2019 18:28:12 +0200 Subject: [PATCH] Add assertions to map and list items --- smnp/ast/node/list.py | 3 ++- smnp/ast/node/map.py | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/smnp/ast/node/list.py b/smnp/ast/node/list.py index b59a1d0..ed77d62 100644 --- a/smnp/ast/node/list.py +++ b/smnp/ast/node/list.py @@ -1,5 +1,6 @@ from smnp.ast.node.iterable import abstractIterableParser from smnp.ast.node.model import Node +from smnp.ast.parser import Parser from smnp.token.type import TokenType @@ -14,5 +15,5 @@ def ListParser(input): List, TokenType.OPEN_SQUARE, TokenType.CLOSE_SQUARE, - ExpressionParser + Parser.doAssert(ExpressionParser, "expression") )(input) diff --git a/smnp/ast/node/map.py b/smnp/ast/node/map.py index d96182e..47784dd 100644 --- a/smnp/ast/node/map.py +++ b/smnp/ast/node/map.py @@ -36,8 +36,8 @@ def MapParser(input): mapEntryParser = Parser.allOf( keyParser, - Parser.terminal(TokenType.ARROW, createNode=Operator.withValue), - valueParser, + Parser.terminal(TokenType.ARROW, createNode=Operator.withValue, doAssert=True), + Parser.doAssert(valueParser, "expression"), createNode=MapEntry.withValues )