예제 #1
0
 static SyntaxTokenWithValue()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxTokenWithValue <T>), r => new SyntaxTokenWithValue <T>(r));
 }
 static WithLotsOfChildren()
 {
     ObjectBinder.RegisterTypeReader(typeof(WithLotsOfChildren), r => new WithLotsOfChildren(r));
 }
 static MissingTokenWithTrivia()
 {
     ObjectBinder.RegisterTypeReader(typeof(MissingTokenWithTrivia), r => new MissingTokenWithTrivia(r));
 }
예제 #4
0
 public override T PerformExecuteSingle <T>(QueryDescription query, ObjectBinder objectBinder)
 {
     return(default(T));
 }
 static TypeWithTwoMembers()
 {
     ObjectBinder.RegisterTypeReader(typeof(TypeWithTwoMembers <T, S>), r => new TypeWithTwoMembers <T, S>(r));
 }
 static PrimitiveArrayMemberTest()
 {
     ObjectBinder.RegisterTypeReader(typeof(PrimitiveArrayMemberTest), r => new PrimitiveArrayMemberTest(r));
 }
예제 #7
0
 static SyntaxAnnotation()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxAnnotation), r => new SyntaxAnnotation(r));
 }
 static Node()
 {
     ObjectBinder.RegisterTypeReader(typeof(Node), r => new Node(r));
 }
예제 #9
0
 static SyntaxIdentifierWithTrivia()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxIdentifierWithTrivia), r => new SyntaxIdentifierWithTrivia(r));
 }
예제 #10
0
 static NamingStylePreferences()
 {
     ObjectBinder.RegisterTypeReader(typeof(NamingStylePreferences), ReadFrom);
 }
예제 #11
0
 public T ExecuteSingle <T>(QueryDescription query, ObjectBinder objectBinder)
 {
     // TODO: Evaluate query here because it means we can avoid running a whole query if all we need is the first etc.
     return(ExecuteMany <T>(query, objectBinder).FirstOrDefault());
 }
예제 #12
0
 public T ExecuteScalar <T>(QueryDescription query, ObjectBinder objectBinder)
 {
     throw new NotImplementedException();
 }
예제 #13
0
 public ObjectEnumerator(ObjectBinder objectBinder, DataSourceSelectArguments arguments)
 {
     _objectBinder = objectBinder;
     _arguments    = arguments;
 }
예제 #14
0
 public abstract T PerformExecuteScalar <T>(QueryDescription query, ObjectBinder objectBinder);
 static SyntaxIdentifierExtended()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxIdentifierExtended), r => new SyntaxIdentifierExtended(r));
 }
        public static IEnumerable <T> ExecuteMany <T>(this IEnumerable <IReadonlyEntityRepository> readonlyRepositories, ICoreReadonlyRelationsRepository groupRepo, Uri idRoot, QueryDescription query, ObjectBinder objectBinder)
            where T : class, IReferenceByHiveId
        {
            var totalOutput = new HashSet <T>();

            foreach (var reader in readonlyRepositories)
            {
                reader.ExecuteMany <T>(query, objectBinder).SkipWhile(SkipAndMergeFromProviders(reader.ProviderMetadata, totalOutput)).ForEach(x => totalOutput.Add(x));
            }
            return(totalOutput.DistinctBy(x => x.Id).Select(x => ProcessIdsAndGroupRelationProxyDelegate(groupRepo, idRoot, x)));
        }
예제 #17
0
 static DiagnosticInfo()
 {
     ObjectBinder.RegisterTypeReader(typeof(DiagnosticInfo), r => new DiagnosticInfo(r));
 }
 static TypeWithOneMember()
 {
     ObjectBinder.RegisterTypeReader(typeof(TypeWithOneMember <T>), r => new TypeWithOneMember <T>(r));
 }
예제 #19
0
 public ColumnCell (string property, bool expand)
 {
     Binder = ObjectBinder = new ObjectBinder () { Property = property };
     Expand = expand;
 }
 static TypeWithManyMembers()
 {
     ObjectBinder.RegisterTypeReader(typeof(TypeWithManyMembers <T>), r => new TypeWithManyMembers <T>(r));
 }
예제 #21
0
 static SyntaxDiagnosticInfo()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxDiagnosticInfo), r => new SyntaxDiagnosticInfo(r));
 }
 static PrimitiveValueTest()
 {
     ObjectBinder.RegisterTypeReader(typeof(PrimitiveValueTest), r => new PrimitiveValueTest(r));
 }
 static SyntaxTokenWithTrivia()
 {
     ObjectBinder.RegisterTypeReader(typeof(SyntaxTokenWithTrivia), r => new SyntaxTokenWithTrivia(r));
 }
예제 #24
0
 public override IEnumerable <T> PerformExecuteMany <T>(QueryDescription query, ObjectBinder objectBinder)
 {
     return(Enumerable.Empty <T>());
 }
예제 #25
0
        public override IEnumerable <T> PerformExecuteMany <T>(QueryDescription query, ObjectBinder objectBinder)
        {
            //var direction = query.From.HierarchyScope;

            var results = Helper.PerformGetByQuery <T>(query, objectBinder);

            switch (query.ResultFilter.ResultFilterType)
            {
            case ResultFilterType.Count:
                //this is weird but returns an integer
                return(new[] { results.Count() }.Cast <T>());

            case ResultFilterType.Take:
                results = results.Take(query.ResultFilter.SelectorArgument);
                break;
            }

            if (typeof(T).IsAssignableFrom(query.ResultFilter.ResultType))
            {
                return(results.Distinct().Select(node => FrameworkContext.TypeMappers.Map <T>(node)));
            }

            return(Enumerable.Empty <T>());
        }
예제 #26
0
 static LocalizableResourceString()
 {
     ObjectBinder.RegisterTypeReader(typeof(LocalizableResourceString), reader => new LocalizableResourceString(reader));
 }
예제 #27
0
 public virtual IQueryable <TSpecific> Query <TSpecific>(ObjectBinder objectBinder)
 {
     return(new Queryable <TSpecific>(new Executor(QueryableDataSource, objectBinder)));
 }
예제 #28
0
 static LocalizableStringWithArguments()
 {
     ObjectBinder.RegisterTypeReader(typeof(LocalizableStringWithArguments), reader => new LocalizableStringWithArguments(reader));
 }
예제 #29
0
 static CodeStyleOption2()
 {
     ObjectBinder.RegisterTypeReader(typeof(CodeStyleOption2 <T>), ReadFrom);
 }
예제 #30
0
 static MessageProvider()
 {
     ObjectBinder.RegisterTypeReader(typeof(MessageProvider), r => Instance);
 }
예제 #31
0
 public abstract IEnumerable <T> PerformExecuteMany <T>(QueryDescription query, ObjectBinder objectBinder);