Exemplo n.º 1
0
 private static void Accept(IQueryVisitor visitor, ISpanQuery query, VisitorScope scope = VisitorScope.Span)
 {
     if (query == null)
     {
         return;
     }
     visitor.Scope = scope;
     query.Accept(visitor);
 }
Exemplo n.º 2
0
 private void Accept(IQueryVisitor visitor, IQueryContainer query, VisitorScope scope = VisitorScope.Query)
 {
     if (query == null)
     {
         return;
     }
     visitor.Scope = scope;
     query.Accept(visitor);
 }
Exemplo n.º 3
0
 private void Accept(IQueryVisitor visitor, IFilterContainer filter, VisitorScope scope = VisitorScope.Filter)
 {
     if (filter == null)
     {
         return;
     }
     visitor.Scope = scope;
     filter.Accept(visitor);
 }
Exemplo n.º 4
0
 protected override Delegate Call <TObj>()
 {
     return(new ProcessObject <Stream, TObj>(
                (Stream stream, TObj value) =>
     {
         Action writeEndOfObject = () => stream.WriteByte(0);
         VisitorScope <Stream> scope =
             value != null
                     ? VisitStatus.Continue
                     : VisitStatus.SkipChildren;
         return scope + writeEndOfObject;
     }));
 }
Exemplo n.º 5
0
 protected override Func <PropertyInfo, Delegate> Call <TObj, TValue>()
 {
     return(property =>
     {
         IGetter <TObj, TValue> getter = Getter.Create <TObj, TValue>(property);
         return new ProcessField <Data, TObj, TValue>(
             (Data data, TObj obj, ref TValue valuea) =>
         {
             TValue valueb = getter.Apply((TObj)data.X);
             VisitorScope <Data> result = VisitStatus.Continue;
             return result + Optional.From(new Data(valueb));
         });
     });
 }
Exemplo n.º 6
0
 private void Accept(IQueryVisitor visitor, IEnumerable <IQueryContainer> queries, VisitorScope scope = VisitorScope.Query)
 {
     if (!queries.HasAny())
     {
         return;
     }
     foreach (var q in queries)
     {
         this.Accept(visitor, q, scope);
     }
 }
Exemplo n.º 7
0
 private void Accept(IQueryVisitor visitor, IEnumerable <IFilterContainer> filters, VisitorScope scope = VisitorScope.Filter)
 {
     if (!filters.HasAny())
     {
         return;
     }
     foreach (var f in filters)
     {
         this.Accept(visitor, f, scope);
     }
 }
Exemplo n.º 8
0
        private static void Accept(IQueryVisitor visitor, IEnumerable <IQueryContainer> queries, VisitorScope scope = VisitorScope.Query)
        {
            if (queries == null)
            {
                return;
            }

            foreach (var f in queries)
            {
                Accept(visitor, f, scope);
            }
        }
 private void Accept(IAggregationVisitor visitor, IAggregationContainer aggregation, VisitorScope scope = VisitorScope.Aggregation)
 {
     if (aggregation == null)
     {
         return;
     }
     visitor.Scope = scope;
     aggregation.Accept(visitor);
 }