LoadExpression() private method

private LoadExpression ( string data ) : void
data string
return void
Exemplo n.º 1
0
        internal DataExpression(DataTable?table, string?expression, Type?type)
        {
            ExpressionParser parser = new ExpressionParser(table);

            parser.LoadExpression(expression);

            _originalExpression = expression;
            _expr = null;

            // Note: nobody seems to pass a null expression in the codebase
            if (expression != null)
            {
                _storageType = DataStorage.GetStorageType(type);
                if (_storageType == StorageType.BigInteger)
                {
                    throw ExprException.UnsupportedDataType(type !);
                }

                _dataType = type;
                _expr     = parser.Parse();
                _parsed   = true;
                if (_expr != null && table != null)
                {
                    Bind(table);
                }
                else
                {
                    _bound = false;
                }
            }
        }
Exemplo n.º 2
0
        internal DataExpression(DataTable table, string expression, Type type)
        {
            ExpressionParser parser = new ExpressionParser(table);
            parser.LoadExpression(expression);

            _originalExpression = expression;
            _expr = null;

            if (expression != null)
            {
                _storageType = DataStorage.GetStorageType(type);
                if (_storageType == StorageType.BigInteger)
                {
                    throw ExprException.UnsupportedDataType(type);
                }

                _dataType = type;
                _expr = parser.Parse();
                _parsed = true;
                if (_expr != null && table != null)
                {
                    Bind(table);
                }
                else
                {
                    _bound = false;
                }
            }
        }
Exemplo n.º 3
0
        /// <include file='doc\DataExpression.uex' path='docs/doc[@for="DataExpression.DataExpression2"]/*' />
        public DataExpression(string expression, DataTable table, Type type)
        {
            ExpressionParser parser = new ExpressionParser();

            parser.LoadExpression(expression);

            originalExpression  = expression;
            optimizedExpression = null;
            expr = null;

            if (expression != null)
            {
                this.type = type;
                expr      = parser.Parse();
                parsed    = true;
                if (expr != null && table != null)
                {
                    this.Bind(table);
                }
                else
                {
                    bound = false;
                }
            }
        }
        internal DataExpression(DataTable table, string expression, Type type)
        {
            ExpressionParser parser = new ExpressionParser(table);

            parser.LoadExpression(expression);

            originalExpression = expression;
            expr = null;

            if (expression != null)
            {
                _storageType = DataStorage.GetStorageType(type);
                if (_storageType == StorageType.BigInteger)
                {
                    throw ExprException.UnsupportedDataType(type);
                }

                _dataType = type;
                expr      = parser.Parse();
                parsed    = true;
                if (expr != null && table != null)
                {
                    this.Bind(table);
                }
                else
                {
                    bound = false;
                }
            }
        }
 internal DataExpression(DataTable table, string expression, Type type)
 {
     this.dependency = DataTable.zeroColumns;
     ExpressionParser parser = new ExpressionParser(table);
     parser.LoadExpression(expression);
     this.originalExpression = expression;
     this.expr = null;
     if (expression != null)
     {
         this._storageType = DataStorage.GetStorageType(type);
         if (this._storageType == StorageType.BigInteger)
         {
             throw ExprException.UnsupportedDataType(type);
         }
         this._dataType = type;
         this.expr = parser.Parse();
         this.parsed = true;
         if ((this.expr != null) && (table != null))
         {
             this.Bind(table);
         }
         else
         {
             this.bound = false;
         }
     }
 }
Exemplo n.º 6
0
        internal DataExpression(DataTable table, string expression, Type type)
        {
            this.dependency = DataTable.zeroColumns;
            ExpressionParser parser = new ExpressionParser(table);

            parser.LoadExpression(expression);
            this.originalExpression = expression;
            this.expr = null;
            if (expression != null)
            {
                this._storageType = DataStorage.GetStorageType(type);
                if (this._storageType == StorageType.BigInteger)
                {
                    throw ExprException.UnsupportedDataType(type);
                }
                this._dataType = type;
                this.expr      = parser.Parse();
                this.parsed    = true;
                if ((this.expr != null) && (table != null))
                {
                    this.Bind(table);
                }
                else
                {
                    this.bound = false;
                }
            }
        }
Exemplo n.º 7
0
        internal virtual void CheckExpression(string expression)
        {
            ExpressionParser parser = new ExpressionParser();

            parser.LoadExpression(expression);
            expr   = null;
            parsed = false;
            bound  = false;

            originalExpression  = expression;
            optimizedExpression = null;

            if (expression != null)
            {
                expr   = parser.Parse();
                parsed = true;
                bound  = false;
            }
            if (expr != null)
            {
                this.Bind(table);
            }
        }