Ejemplo n.º 1
0
def assignmentStatement(node):
    """
assignmentStatement = variable "=" expression ";".
	"""
    identifierNode = Node(token)
    consume(IDENTIFIER)

    operatorNode = Node(token)
    consume("=")
    node.addNode(operatorNode)

    operatorNode.addNode(identifierNode)

    expression(operatorNode)
    consume(";")
Ejemplo n.º 2
0
def printStatement(node):
    """
printStatement      = "print" expression ";".
	"""
    statementNode = Node(token)
    consume("print")

    node.addNode(statementNode)

    expression(statementNode)

    consume(";")
Ejemplo n.º 3
0
def program():
    """
program = statement {statement} EOF.
	"""
    global ast
    node = Node()

    statement(node)
    while not found(EOF):
        statement(node)

    consume(EOF)
    ast = node