public static PythonNode Wrap(PythonAst ast) { var result = new PythonAstNode(ast); result.AddChild(Wrap(ast.Body, result)); return(result); }
public State CreateInputState(string program) { var result = new PythonAstNode( new SuiteStatement( new Statement[1] { new ExpressionStatement( new OrExpression( new NameExpression("a"), new ParenthesisExpression( new OrExpression( new NameExpression("a"), new NameExpression("b") ) ) ) ) } ), false, ModuleOptions.Initialize, false ); var content = ASTHelper.ParseContent(program); var astBefore = NodeWrapper.Wrap(content); var input = State.CreateForExecution(Grammar.Value.InputSymbol, astBefore); return(input); }
private void Write(PythonAstNode stmt) { stmt.Children.ForEach(e => Write(e)); }