From 31f72e0a9170e15e372377aa0064a92f31363079 Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Wed, 26 Dec 2012 18:50:49 +0200 Subject: Build AST. --- nodes.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'nodes.py') diff --git a/nodes.py b/nodes.py index 0a2f154a1..850cffb14 100644 --- a/nodes.py +++ b/nodes.py @@ -68,10 +68,21 @@ class CodeBlock(Statement): def __init__(self): Statement.__init__(self) self.statements = [] + + def prepend(self, statement): + self.statements = [statement] + self.statements + +class Arguments(Statement): + def __init__(self): + Statement.__init__(self) + self.arguments = [] + + def prepend(self, statement): + self.arguments = [statement] + self.arguments def statement_from_expression(expr): - if type(expr) == type(AtomExpression(None)): + if isinstance(expr, AtomExpression): return AtomStatement(expr.value) - if type(expr) == type(StringExpression(None)): + if isinstance(expr, StringExpression): return StringStatement(expr.value) raise RuntimeError('Can not convert unknown expression to a statement.') -- cgit v1.2.3