Parse Boolean literals.

This commit is contained in:
Simon Forman 2021-04-06 11:34:46 -07:00
parent c00c6a4e32
commit 14c16d469f
1 changed files with 7 additions and 5 deletions

View File

@ -41,6 +41,7 @@ from .utils.stack import list_to_stack
#TODO: explain the details of float lits and strings.
BOOL = 'true|false'
FLOAT = r'-?\d+\.\d*(e(-|\+)\d+)?'
INT = r'-?\d+'
SYMBOL = r'[•\w!@$%^&*()_+<>?|\/;:`~,.=-]+'
@ -114,6 +115,7 @@ def _parse(tokens):
_scanner = Scanner([
( BOOL, lambda _, token: token == 'true'),
( FLOAT, lambda _, token: float(token)),
( INT, lambda _, token: int(token)),
( SYMBOL, lambda _, token: Symbol(token)),