Beispiel #1
0
 public addressed_value Into(addressed_value x, addressed_value v) // При возникновении новой конструкции в грамматике variable добавить обработку сюда
 {
     if (v.GetType() == typeof(dot_question_node))
     {
         var vv  = v as dot_question_node;
         var res = new dot_question_node(Into(x, vv.left), vv.right, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(dot_node))
     {
         var vv  = v as dot_node;
         var res = new dot_node(Into(x, vv.left), vv.right, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(indexer))
     {
         var vv  = v as indexer;
         var res = new indexer(Into(x, vv.dereferencing_value), vv.indexes, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(slice_expr))
     {
         var vv  = v as slice_expr;
         var res = new slice_expr(Into(x, vv.dereferencing_value), vv.from, vv.to, vv.step, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(slice_expr_question))
     {
         var vv  = v as slice_expr_question;
         var res = new slice_expr_question(Into(x, vv.dereferencing_value), vv.from, vv.to, vv.step, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(method_call))
     {
         var vv  = v as method_call;
         var res = new method_call(Into(x, vv.dereferencing_value), vv.parameters, x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(roof_dereference))
     {
         var vv  = v as roof_dereference;
         var res = new roof_dereference(Into(x, vv.dereferencing_value), x.source_context);
         return(res);
     }
     else if (v.GetType() == typeof(ident_with_templateparams))
     {
         var vv  = v as ident_with_templateparams;
         var res = new ident_with_templateparams(Into(x, vv.name), vv.template_params, x.source_context);
         return(res);
     }
     else
     {
         var res = new dot_node(x, v, x.source_context);
         return(res);
     }
 }
 public override void visit(ident_with_templateparams node)
 {
 }
 public virtual void visit(ident_with_templateparams _ident_with_templateparams)
 {
     DefaultVisit(_ident_with_templateparams);
 }
		public override void visit(ident_with_templateparams _ident_with_templateparams)
		{
			DefaultVisit(_ident_with_templateparams);
			pre_do_visit(_ident_with_templateparams);
			visit(ident_with_templateparams.name);
			visit(ident_with_templateparams.template_params);
			post_do_visit(_ident_with_templateparams);
		}
		public virtual void post_do_visit(ident_with_templateparams _ident_with_templateparams)
		{
		}
Beispiel #6
0
 public virtual void visit(ident_with_templateparams _ident_with_templateparams)
 {
 }
Beispiel #7
0
 public override void visit(ident_with_templateparams _ident_with_templateparams)
 {
     throw new NotImplementedException();
 }
		public virtual void visit(ident_with_templateparams _ident_with_templateparams)
		{
			DefaultVisit(_ident_with_templateparams);
		}
Beispiel #9
0
 public override void visit(ident_with_templateparams node)
 {
     prepare_node(node.name, "name");
     prepare_node(node.template_params, "template_params");
 }
Beispiel #10
0
		public override void visit(ident_with_templateparams _ident_with_templateparams)
		{
			executer.visit(_ident_with_templateparams);
			if (_ident_with_templateparams.name != null)
				this.visit((dynamic)_ident_with_templateparams.name);
			if (_ident_with_templateparams.template_params != null)
				this.visit((dynamic)_ident_with_templateparams.template_params);
			if (_ident_with_templateparams.attributes != null)
				this.visit((dynamic)_ident_with_templateparams.attributes);
		}