/*public void Bind() * { * throw new NotImplementedException(); * }*/ public SLE.LambdaExpression BindAndTransform(MJCP.Expression expression, MJCP.BindingInfo bindingInfo) { Init(); //TODO test to know the internal of this and know the use of bindinginfo builder.Body = SLE.Expression.Block(Generate(expression)); return(builder.MakeLambda()); }
public Expression ParseExpression (ref List<Comment> Comments, ref BindingInfo BindingInfo) { Init (); Expression ex = ParseExpression(); Comments = lexer.Comments; this.BindingInfo = BindingInfo; return ex; }
public DList<Statement, BlockStatement> ParseProgram (ref List<Comment> Comments, ref BindingInfo BindingInfo) { Init (); DList<Statement, BlockStatement> result = new DList<Statement, BlockStatement> (); while (current.Kind != Token.Type.EndOfInput) { if (current.Kind == Token.Type.function) result.Append (ParseFunctionDeclaration ()); else result.Append (ParseStatement ()); Next (); } Comments = lexer.Comments; return result; }
public SLE.LambdaExpression BindAndTransform(DList <MJCP.Statement, MJCP.BlockStatement> statements, MJCP.BindingInfo bindingInfo, bool Print) { Init(); //TODO test to know the internal of this and know the use of bindinginfo builder.Body = SLE.Expression.Block(Generate(statements, bindingInfo, Print)); return(builder.MakeLambda()); }