Exemplo n.º 1
0
        /*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());
        }
Exemplo n.º 2
0
		public Expression ParseExpression (ref List<Comment> Comments, ref BindingInfo BindingInfo)
		{
			Init ();
			Expression ex = ParseExpression();
			Comments = lexer.Comments;
			this.BindingInfo = BindingInfo;
			return ex;
		}
Exemplo n.º 3
0
		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;
		}
Exemplo n.º 4
0
 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());
 }