Esempio n. 1
0
 public virtual Net.Vpc.Upa.Expressions.Expression ParseExpression(Net.Vpc.Upa.Expressions.Expression expression)
 {
     if (expression is Net.Vpc.Upa.Expressions.UserExpression)
     {
         Net.Vpc.Upa.Expressions.UserExpression ucce = (Net.Vpc.Upa.Expressions.UserExpression)expression;
         Net.Vpc.Upa.Expressions.Expression     expr = ParseExpression(ucce.GetExpression());
         expr.Visit(new Net.Vpc.Upa.Impl.Uql.Util.UserExpressionParametersMatcherVisitor(ucce));
         return(expr);
     }
     else
     {
         Net.Vpc.Upa.Impl.Uql.Util.UserExpressionParserVisitor v = new Net.Vpc.Upa.Impl.Uql.Util.UserExpressionParserVisitor(this);
         expression.Visit(v);
         return(expression);
     }
 }
 public virtual bool Visit(Net.Vpc.Upa.Expressions.Expression expression, Net.Vpc.Upa.Expressions.ExpressionTag tag)
 {
     foreach (Net.Vpc.Upa.Expressions.TaggedExpression cc in expression.GetChildren())
     {
         Net.Vpc.Upa.Expressions.Expression cce = cc.GetExpression();
         if (cce != null)
         {
             if (cce is Net.Vpc.Upa.Expressions.UserExpression)
             {
                 Net.Vpc.Upa.Expressions.UserExpression ucce = (Net.Vpc.Upa.Expressions.UserExpression)cce;
                 Net.Vpc.Upa.Expressions.Expression     expr = expressionManager.ParseExpression(ucce.GetExpression());
                 expr.Visit(new Net.Vpc.Upa.Impl.Uql.Util.UserExpressionParametersMatcherVisitor(ucce));
                 expression.SetChild(expr, cc.GetTag());
             }
         }
     }
     return(true);
 }