Exemplo n.º 1
0
 /// <summary>
 /// Parse test function
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 private Expression <Func <VariantValue, VariantValue> > ParseScalarLambda(
     SqlSelectParser.ScalarTypeFunctionContext context)
 {
     if (context.IS_DEFINED() != null)
     {
         return(s => _serializer.FromObject(s != null));
     }
     if (context.IS_NULL() != null)
     {
         return(s => _serializer.FromObject(s != null && s.IsNull()));
     }
     if (context.IS_BOOL() != null)
     {
         return(s => _serializer.FromObject(s != null && s.IsBoolean));
     }
     if (context.IS_NUMBER() != null)
     {
         return(s => _serializer.FromObject(s != null && s.IsDecimal));
     }
     if (context.IS_STRING() != null)
     {
         return(s => _serializer.FromObject(s != null && s.IsString));
     }
     if (context.IS_OBJECT() != null)
     {
         return(s => _serializer.FromObject(s != null && s.IsObject));
     }
     return(s => _serializer.FromObject(true));
 }
Exemplo n.º 2
0
 /// <summary>
 /// Parse test function
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 private Expression <Func <JsonToken, JsonToken> > ParseScalarLambda(
     SqlSelectParser.ScalarTypeFunctionContext context)
 {
     if (context.IS_DEFINED() != null)
     {
         return(s => JToken.FromObject(s != null));
     }
     if (context.IS_NULL() != null)
     {
         return(s => JToken.FromObject(s != null &&
                                       (((JToken)s).Type == JTokenType.Null)));
     }
     if (context.IS_BOOL() != null)
     {
         return(s => JToken.FromObject(s != null &&
                                       (((JToken)s).Type == JTokenType.Boolean)));
     }
     if (context.IS_NUMBER() != null)
     {
         return(s => JToken.FromObject(s != null &&
                                       (((JToken)s).Type == JTokenType.Float || ((JToken)s).Type == JTokenType.Integer)));
     }
     if (context.IS_STRING() != null)
     {
         return(s => JToken.FromObject(s != null &&
                                       (((JToken)s).Type == JTokenType.String)));
     }
     if (context.IS_OBJECT() != null)
     {
         return(s => JToken.FromObject(s != null &&
                                       (((JToken)s).Type == JTokenType.Object)));
     }
     return(s => JToken.FromObject(true));
 }