Exemplo n.º 1
0
        ///////////////////////
        // Private

        private bool?EvaluateSingle(HqlRecord record)
        {
            object v1 = record.GetValue(Token1);
            object v2 = record.GetValue(Token2);

            return(Evaluate(v1, v2, Compare));
        }
Exemplo n.º 2
0
        public object GetValue(HqlRecord record)
        {
            switch (FieldType)
            {
            case HqlFieldType.FIELDNUM:
            case HqlFieldType.FIXEDWIDTH:
            case HqlFieldType.STAR:
            case HqlFieldType.ROWNUM:
            case HqlFieldType.FILENAME:
                return(record.GetValue(this));

            case HqlFieldType.SCALAR:
                return(Scalar.Evaluate(record));

            case HqlFieldType.FUNCTION:
                return(Func.GetValue(record));

            case HqlFieldType.LITERAL_STRING:
                return(Name);

            case HqlFieldType.LITERAL_INT:
                return(IntValue);

            case HqlFieldType.LITERAL_FLOAT:
                return(DecimalValue);

            default:
                throw new Exception("Unknown HqlField type");
            }
        }
Exemplo n.º 3
0
        private bool?EvaluateInValues(HqlRecord record)
        {
            object v1 = record.GetValue(Token1);

            for (int i = 0; i < _values.Count; ++i)
            {
                try
                {
                    HqlToken t  = (HqlToken)_values[i];
                    object   v2 = record.GetValue(t);

                    if (Evaluate(v1, v2, Compare))
                    {
                        return(true);
                    }
                }
                catch (Exception ex)
                {
                    int stop = 0;
                    throw;
                }
            }
            return(false);
        }