コード例 #1
0
        public virtual op_type_node create_op_type_node(Operators op, LexLocation loc)
        {
            op_type_node otn = new op_type_node(op);

            otn.source_context = GetTokenSourceContext(loc);
            return(otn);
        }
コード例 #2
0
        public statement_list NewLambdaBody(expression expr_l1, LexLocation loc)
        {
            var sl = new statement_list();

            sl.expr_lambda_body = true;
            var id = new ident("result");
            var op = new op_type_node(Operators.Assignment);
            //_op_type_node.source_context = parsertools.GetTokenSourceContext();
            var ass = new assign(id, expr_l1, op.type);

            parsertools.create_source_context(ass, id, expr_l1);             // дурацкая функция - если хотя бы у одного sc=null, то возвращает null
            if (ass.source_context == null)
            {
                if (expr_l1.source_context != null)
                {
                    ass.source_context = expr_l1.source_context;
                }
                else if (id.source_context != null)
                {
                    ass.source_context = id.source_context;
                }
            }
            sl.subnodes.Add(ass);
            sl.source_context = loc;
            return(sl);
        }
コード例 #3
0
        public statement_list NewLambdaBody(expression expr_l1, LexLocation loc)
        {
            var sl = new statement_list();

            sl.expr_lambda_body = true;
            var id = new ident("result");
            var op = new op_type_node(Operators.Assignment);
            //_op_type_node.source_context = parsertools.GetTokenSourceContext();
            var ass = new assign(id, expr_l1, op.type);

            parsertools.create_source_context(ass, id, expr_l1);
            sl.subnodes.Add(ass);
            sl.source_context = loc;
            return(sl);
        }
コード例 #4
0
 public override void visit(op_type_node _op_type_node)
 {
 }
コード例 #5
0
 public virtual void visit(op_type_node _op_type_node)
 {
     DefaultVisit(_op_type_node);
 }
コード例 #6
0
		public override void visit(op_type_node _op_type_node)
		{
			DefaultVisit(_op_type_node);
			pre_do_visit(_op_type_node);
			post_do_visit(_op_type_node);
		}
コード例 #7
0
		public virtual void post_do_visit(op_type_node _op_type_node)
		{
		}
コード例 #8
0
 public virtual void visit(op_type_node _op_type_node)
 {
 }
コード例 #9
0
 public override void visit(op_type_node _op_type_node)
 {
     throw new NotImplementedException();
 }
コード例 #10
0
		public virtual void visit(op_type_node _op_type_node)
		{
		}
コード例 #11
0
		public virtual void visit(op_type_node _op_type_node)
		{
			DefaultVisit(_op_type_node);
		}
コード例 #12
0
		public override void visit(op_type_node _op_type_node)
		{
			executer.visit(_op_type_node);
		}