Ejemplo n.º 1
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val1 = Left.Evaluate(context);

            if (val1 == null)
            {
                return(null);
            }

            bool bval1 = (bool)val1;

            if (!bval1)
            {
                return(false);
            }

            object val2 = Right.Evaluate(context);

            if (val2 == null)
            {
                return(null);
            }

            bool bval2 = (bool)val2;

            if (!bval2)
            {
                return(false);
            }

            return(true);
        }
Ejemplo n.º 2
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Left == null)
            {
                val = context.GetRootObject();
            }
            else
            {
                val = this.Left.Evaluate(context);
            }

            if (val == null)
            {
                return(null);
            }

            if (_propInfoCache == null)
            {
                _propInfoCache = val.GetType().GetProperty(PropertyName);
                if (_propInfoCache == null)
                {
                    throw new SoodaException(PropertyName + " not found in " + val.GetType().Name);
                }
            }

            return(_propInfoCache.GetValue(val, null));
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val1 = par1.Evaluate(context);
            object val2 = par2.Evaluate(context);

            return(CalcValue(op, val1, val2));
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object v1 = par1.Evaluate(context);
            object v2 = par2.Evaluate(context);

            return(Compare(v1, v2, op));
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = par.Evaluate(context);
            if (val == null)
                return null;

            return !((bool)val);
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = par.Evaluate(context);

            if (val == null)
            {
                return(null);
            }

            return(!((bool)val));
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = condition.Evaluate(context);
            if (val == null)
                return null;

            SoqlExpression expr = (bool) val ? ifTrue : ifFalse;
            if (expr == null)
                return null;
            return expr.Evaluate(context);
        }
Ejemplo n.º 8
0
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     object val = source.Evaluate(context);
     if (val == null)
         return null;
     switch (type)
     {
         case "float":
             return Convert.ToDouble(val);
         default:
             throw new NotImplementedException(type);
     }
 }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = this.Expr.Evaluate(context);

            if (NotNull)
            {
                return val != null;
            }
            else
            {
                return val == null;
            }
        }
Ejemplo n.º 10
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = this.Expr.Evaluate(context);

            if (NotNull)
            {
                return(val != null);
            }
            else
            {
                return(val == null);
            }
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Path != null)
                val = this.Path.Evaluate(context);
            else
                val = context.GetRootObject();

            if (val == null)
                return null;

            SoodaObject so = (SoodaObject)val;
            return so.GetClassInfo().Name;
        }
Ejemplo n.º 12
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = source.Evaluate(context);

            if (val == null)
            {
                return(null);
            }
            switch (type)
            {
            case "float":
                return(Convert.ToDouble(val));

            default:
                throw new NotImplementedException(type);
            }
        }
Ejemplo n.º 13
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = condition.Evaluate(context);

            if (val == null)
            {
                return(null);
            }

            SoqlExpression expr = (bool)val ? ifTrue : ifFalse;

            if (expr == null)
            {
                return(null);
            }
            return(expr.Evaluate(context));
        }
Ejemplo n.º 14
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Path != null)
            {
                val = this.Path.Evaluate(context);
            }
            else
            {
                val = context.GetRootObject();
            }
            if (val == null)
                return null;

            IList sol = (IList)val.GetType().GetProperty(CollectionName).GetValue(val, null);
            return sol.Count;
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = haystack.Evaluate(context);
            if (val == null)
                return null;
            string s = (string) val;

            switch (position)
            {
                case SoqlStringContainsPosition.Start:
                    return s.StartsWith(needle);
                case SoqlStringContainsPosition.End:
                    return s.EndsWith(needle);
                case SoqlStringContainsPosition.Any:
                    return s.Contains(needle);
            }

            throw new NotImplementedException(position.ToString());
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val1 = par1.Evaluate(context);
            if (val1 == null)
                return null;

            bool bval1 = (bool)val1;
            if (bval1)
                return true;

            object val2 = par2.Evaluate(context);
            if (val2 == null)
                return null;

            bool bval2 = (bool)val2;
            if (bval2)
                return true;

            return false;
        }
Ejemplo n.º 17
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Path != null)
            {
                val = this.Path.Evaluate(context);
            }
            else
            {
                val = context.GetRootObject();
            }
            if (val == null)
            {
                return(null);
            }

            IList sol = (IList)val.GetType().GetProperty(CollectionName).GetValue(val, null);

            return(sol.Count);
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = par.Evaluate(context);

            if (val == null)
            {
                return(null);
            }

            if (val is double)
            {
                return(-(double)val);
            }
            if (val is float)
            {
                return(-(float)val);
            }
            if (val is decimal)
            {
                return(-(decimal)val);
            }
            if (val is long)
            {
                return(-(long)val);
            }
            if (val is int)
            {
                return(-(int)val);
            }
            if (val is short)
            {
                return(-(short)val);
            }
            if (val is sbyte)
            {
                return(-(sbyte)val);
            }

            throw new NotSupportedException("Unary negation is not supported on " + val.GetType().Name);
        }
Ejemplo n.º 19
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Path != null)
            {
                val = this.Path.Evaluate(context);
            }
            else
            {
                val = context.GetRootObject();
            }

            if (val == null)
            {
                return(null);
            }

            SoodaObject so = (SoodaObject)val;

            return(so.GetClassInfo().Name);
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = par.Evaluate(context);
            if (val == null)
                return null;

            if (val is double)
                return -(double)val;
            if (val is float)
                return -(float)val;
            if (val is decimal)
                return -(decimal)val;
            if (val is long)
                return -(long)val;
            if (val is int)
                return -(int)val;
            if (val is short)
                return -(short)val;
            if (val is sbyte)
                return -(sbyte)val;

            throw new NotSupportedException("Unary negation is not supported on " + val.GetType().Name);
        }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val = haystack.Evaluate(context);

            if (val == null)
            {
                return(null);
            }
            string s = (string)val;

            switch (position)
            {
            case SoqlStringContainsPosition.Start:
                return(s.StartsWith(needle));

            case SoqlStringContainsPosition.End:
                return(s.EndsWith(needle));

            case SoqlStringContainsPosition.Any:
                return(s.Contains(needle));
            }

            throw new NotImplementedException(position.ToString());
        }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return(Value);
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotImplementedException();
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotImplementedException();
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotSupportedException("Asterisk expression is not evaluable.");
 }
Ejemplo n.º 26
0
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotSupportedException("Evaluate() not supported for RAW expressions.");
 }
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object v1 = par1.Evaluate(context);
            object v2 = par2.Evaluate(context);

            return Compare(v1, v2, op);
        }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return InnerExpression.Evaluate(context);
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return Value;
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return context.GetParameter(this.ParameterPosition);
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotSupportedException("Asterisk expression is not evaluable.");
 }
Ejemplo n.º 32
0
 public abstract object Evaluate(ISoqlEvaluateContext context);
Ejemplo n.º 33
0
 public abstract object Evaluate(ISoqlEvaluateContext context);
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return(InnerExpression.Evaluate(context));
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     // this should be evaluated on
     return(Simplify().Evaluate(context));
 }
Ejemplo n.º 36
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val;

            if (this.Left == null)
            {
                val = context.GetRootObject();
            }
            else
            {
                val = this.Left.Evaluate(context);
            }

            if (val == null)
                return null;

            if (_propInfoCache == null)
            {
                _propInfoCache = val.GetType().GetProperty(PropertyName);
                if (_propInfoCache == null)
                    throw new SoodaException(PropertyName + " not found in " + val.GetType().Name);
            }

            return _propInfoCache.GetValue(val, null);
        }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     return(context.GetParameter(this.ParameterPosition));
 }
Ejemplo n.º 38
0
        public override object Evaluate(ISoqlEvaluateContext context)
        {
            object val1 = par1.Evaluate(context);
            object val2 = par2.Evaluate(context);

            return CalcValue(op, val1, val2);
        }
Ejemplo n.º 39
0
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     throw new NotSupportedException("Evaluate() not supported for RAW expressions.");
 }
 public override object Evaluate(ISoqlEvaluateContext context)
 {
     // this should be evaluated on
     return Simplify().Evaluate(context);
 }