diff options
Diffstat (limited to 'neb/parser.py')
| -rw-r--r-- | neb/parser.py | 13 | 
1 files changed, 1 insertions, 12 deletions
| diff --git a/neb/parser.py b/neb/parser.py index 10c6633..bbaf7a8 100644 --- a/neb/parser.py +++ b/neb/parser.py @@ -45,19 +45,8 @@ def parseLiteral(token, prev, tokens):  def parseType(token, prev, tokens):      # if the next token is a symbol, combine for a type -    if tokens[0].type_ == TokenType.SYMBOL: +    if len(tokens) > 0 and tokens[0].type_ == TokenType.SYMBOL:          return Type(f":{tokens[0].text}"), 2 -    elif tokens[0].type_ == TokenType.OPEN_BRACKET: -        # only format currently supported: -        # [ <type> ] -        if tokens[1].type_ != TokenType.COLON: -            raise ParseError("invalid type definition (expecting colon)", tokens[1].line) -        typ, counter = parseType(tokens[1], tokens[0], tokens[2:]) -        if tokens[1+counter].type_ != TokenType.CLOSE_BRACKET: -            raise ParseError("invalid type definition (expecting close bracket)", tokens[1+counter].line) -        return MultiType(f":[{typ.name}]", typ), counter + 3 -    else: -        raise ParseError("invalid type definition!", tokens[0].line)  def parse(tokens):      idx = 0 | 
