def tree_string(self, level): string = indent(level) + "UNARY:\n" + indent(level + 1) + "operator: " string += str(self.operator) + '\n' string += indent(level + 1) + "operand:\n" string += self.operand.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "UNARY:\n" + indent(level + 1) + "operator: " string += str(self.operator) + '\n' string += indent(level + 1) + "operand:\n" string += self.operand.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "case:\n" string += indent(level + 1) + "range:\n" string += self.range_expr.tree_string(level + 2) + '\n' string += indent(level + 1) + "statement:\n" string += self.statement.tree_string(level + 2) + '\n' return string
def tree_string(self, level): string = indent(level) + "WHILE\n" string += indent(level + 1) + "condition:\n" string += self.condition.tree_string(level + 2) + '\n' string += indent(level + 1) + "DO:\n" string += self.statement.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "case:\n" string += indent(level + 1) + "range:\n" string += self.range_expr.tree_string(level + 2) + '\n' string += indent(level + 1) + "statement:\n" string += self.statement.tree_string(level + 2) + '\n' return string
def tree_string(self, level): string = indent(level) + "WHILE\n" string += indent(level + 1) + "condition:\n" string += self.condition.tree_string(level + 2) + '\n' string += indent(level + 1) + "DO:\n" string += self.statement.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "CASE\n" string += indent(level + 1) + "value:\n" string += self.int_expr.tree_string(level + 2) + '\n' for case in self.cases: string += case.tree_string(level + 1) string += indent(level) + "END" return string
def tree_string(self, level): string = indent(level) + "CASE\n" string += indent(level + 1) + "value:\n" string += self.int_expr.tree_string(level + 2) + '\n' for case in self.cases: string += case.tree_string(level + 1) string += indent(level) + "END" return string
def tree_string(self, level): if isinstance(self, WriteLn): string = indent(level) + "WRITELN\n" else: string = indent(level) + "WRITE\n" for elem in self.elements: string += indent(level + 1) + "element:\n" string += elem.tree_string(level + 2) + '\n' return string[:-1]
def tree_string(self, level): string = indent(level) + "BINARY:\n" + indent(level + 1) string += "operator: " + str(self.operator) + '\n' string += indent(level + 1) + "left operand:\n" string += self.left.tree_string(level + 2) + '\n' string += indent(level + 1) + "right operand:\n" string += self.right.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "FOR\n" string += self.variable.tree_string(level + 1) + '\n' string += indent(level + 1) + "IN:\n" string += self.in_range.tree_string(level + 2) + '\n' string += indent(level + 1) + "DO:\n" string += self.statement.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "FOR\n" string += self.variable.tree_string(level + 1) + '\n' string += indent(level + 1) + "IN:\n" string += self.in_range.tree_string(level + 2) + '\n' string += indent(level + 1) + "DO:\n" string += self.statement.tree_string(level + 2) return string
def tree_string(self, level): if isinstance(self, WriteLn): string = indent(level) + "WRITELN\n" else: string = indent(level) + "WRITE\n" for elem in self.elements: string += indent(level + 1) + "element:\n" string += elem.tree_string(level + 2) + '\n' return string[:-1]
def tree_string(self, level): string = indent(level) + "BINARY:\n" + indent(level + 1) string += "operator: " + str(self.operator) + '\n' string += indent(level + 1) + "left operand:\n" string += self.left.tree_string(level + 2) + '\n' string += indent(level + 1) + "right operand:\n" string += self.right.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "IF\n" string += indent(level + 1) + "condition:\n" string += self.condition.tree_string(level + 2) + '\n' string += indent(level + 1) + "then:\n" string += self.then_st.tree_string(level + 2) if self.else_st: string += '\n' + indent(level + 1) + "else:\n" string += self.else_st.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "IF\n" string += indent(level + 1) + "condition:\n" string += self.condition.tree_string(level + 2) + '\n' string += indent(level + 1) + "then:\n" string += self.then_st.tree_string(level + 2) if self.else_st: string += '\n' + indent(level + 1) + "else:\n" string += self.else_st.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "BEGIN\n" if self.sym_table: string += self.sym_table.tree_string(level) + '\n' string += indent(level) + "STATEMENTS\n" for stat in self.statements: string += stat.tree_string(level + 1) + '\n' string += indent(level + 1) + "SEPARATOR\n" string = string[:(-10 - len(indent(1)))] string += "END" return string
def tree_string(self, level): string = indent(level) + "BEGIN\n" if self.sym_table: string += self.sym_table.tree_string(level) + '\n' string += indent(level) + "STATEMENTS\n" for stat in self.statements: string += stat.tree_string(level + 1) + '\n' string += indent(level + 1) + "SEPARATOR\n" string = string[:(-10 - len(indent(1)))] string += "END" return string
def tree_string(self, level): string = indent(level) + "READ\n" string += self.variable.tree_string(level + 1) return string
def tree_string(self, level): return indent(level) + "STRING: " + str(self.value)
def tree_string(self, level): string = indent(level) + "ASSIGN\n" + indent(level + 1) string += "variable: " + str(self.variable) string += "\n" + indent(level + 1) string += "value:\n" + self.expression.tree_string(level + 2) return string
def tree_string(self, level): return indent(level) + "BOOL: " + str(self.value)
def tree_string(self, level): string = indent(level) + "FROM:\n" string += self.from_value.tree_string(level + 1) + '\n' string += indent(level) + "TO:\n" string += self.to_value.tree_string(level + 1) return string
def tree_string(self, level): return indent(level) + "VARIABLE: " + str(self.name)
def tree_string(self, level): return indent(level) + "VARIABLE: " + str(self.name)
def tree_string(self, level): return indent(level) + "BOOL: " + str(self.value)
def tree_string(self, level): string = indent(level) + "FROM:\n" string += self.from_value.tree_string(level + 1) + '\n' string += indent(level) + "TO:\n" string += self.to_value.tree_string(level + 1) return string
def tree_string(self, level): return indent(level) + "STRING: " + str(self.value)
def tree_string(self, level): string = indent(level) + "ASSIGN\n" + indent(level + 1) string += "variable: " + str(self.variable) string += "\n" + indent(level + 1) string += "value:\n" + self.expression.tree_string(level + 2) return string
def tree_string(self, level): string = indent(level) + "READ\n" string += self.variable.tree_string(level + 1) return string