public ExpressionInfo ParseExpression(string expression, ExpressionParser.ExpressionContext context, out bool userCollectionReferenced)
        {
            ExpressionInfo expressionInfo = this.m_langParser.ParseExpression(expression, context, out userCollectionReferenced);

            this.ProcessExpression(expressionInfo, context);
            return(expressionInfo);
        }
 private void ProcessAggregateParam(ExpressionInfo expression, ExpressionParser.ExpressionContext context)
 {
     if (expression != null && expression.Type == ExpressionInfo.Types.Expression)
     {
         this.RegisterExpression(new ExprCompileTimeInfo(expression, context));
     }
 }
        public ExpressionInfo ParseExpression(string expression, ExpressionParser.ExpressionContext context, ExpressionParser.DetectionFlags flag, out bool reportParameterReferenced, out string reportParameterName, out bool userCollectionReferenced)
        {
            ExpressionInfo expressionInfo = this.m_langParser.ParseExpression(expression, context, flag, out reportParameterReferenced, out reportParameterName, out userCollectionReferenced);

            this.ProcessExpression(expressionInfo, context);
            return(expressionInfo);
        }
        public ExpressionInfo ParseExpression(string expression, ExpressionParser.ExpressionContext context)
        {
            ExpressionInfo expressionInfo = this.m_langParser.ParseExpression(expression, context);

            this.ProcessExpression(expressionInfo, context);
            return(expressionInfo);
        }
 public ExprCompileTimeInfo(ExpressionInfo expression, ExpressionParser.ExpressionContext context)
 {
     this.ExpressionInfo    = expression;
     this.OwnerObjectType   = context.ObjectType;
     this.OwnerObjectName   = context.ObjectName;
     this.OwnerPropertyName = context.PropertyName;
     this.NumErrors         = 0;
     this.NumWarnings       = 0;
 }
 private void ProcessAggregateParam(DataAggregateInfo aggregate, ExpressionParser.ExpressionContext context)
 {
     if (aggregate != null && aggregate.Expressions != null)
     {
         for (int i = 0; i < aggregate.Expressions.Length; i++)
         {
             this.ProcessAggregateParam(aggregate.Expressions[i], context);
         }
     }
 }
 private void ProcessAggregateParams(ExpressionInfo expression, ExpressionParser.ExpressionContext context)
 {
     if (expression.Aggregates != null)
     {
         for (int num = expression.Aggregates.Count - 1; num >= 0; num--)
         {
             this.ProcessAggregateParam(expression.Aggregates[num], context);
         }
     }
     if (expression.RunningValues != null)
     {
         for (int num2 = expression.RunningValues.Count - 1; num2 >= 0; num2--)
         {
             this.ProcessAggregateParam(expression.RunningValues[num2], context);
         }
     }
 }
 private void ProcessExpression(ExpressionInfo expression, ExpressionParser.ExpressionContext context)
 {
     if (expression.Type == ExpressionInfo.Types.Expression)
     {
         this.RegisterExpression(new ExprCompileTimeInfo(expression, context));
         this.ProcessAggregateParams(expression, context);
     }
     else if (expression.Type == ExpressionInfo.Types.Aggregate)
     {
         this.ProcessAggregateParams(expression, context);
     }
     else if (expression.Type == ExpressionInfo.Types.Field && context.Location == LocationFlags.None)
     {
         if (this.m_reportLevelFieldReferences == null)
         {
             this.m_reportLevelFieldReferences = new ArrayList();
         }
         this.m_reportLevelFieldReferences.Add(new ExprCompileTimeInfo(expression, context));
     }
 }