public Parser <TSchema, LayoutMatch <TLayout> > CreateQuery(TemplateQueryOptions options, IQueryBuilder <TSchema> queryBuilder) { Parser <TSchema, TEntity> parser = queryBuilder.Select <TEntity>(); var listParser = _required ? parser.OneOrMore() : parser.ZeroOrMore(); return(new EntityListLayoutParser <TLayout, TSchema, TEntity>(listParser, this)); }
public Parser <TSchema, LayoutMatch <TLayout> > CreateQuery(TemplateQueryOptions options, IQueryBuilder <TSchema> queryBuilder) { Parser <TSchema, T> parser = _layout.CreateQuery(options, queryBuilder); var listParser = _required ? parser.OneOrMore() : parser.ZeroOrMore(); return(new LayoutListLayoutParser <TLayout, TSchema, T>(listParser, this)); }
public Parser <TSchema, LayoutMatch <TLayout> > CreateQuery(TemplateQueryOptions options, IQueryBuilder <TSchema> queryBuilder) { Parser <TSchema, T> parser = _layout.CreateQuery(options, queryBuilder); if (_required == false) { parser = parser.Optional(); } return(new LayoutLayoutParser <TLayout, TSchema, T>(parser, this)); }
public Parser <TSchema, LayoutMatch <TLayout> > CreateQuery(TemplateQueryOptions options, IQueryBuilder <TSchema> queryBuilder) { Parser <TSchema, TEntity> parser = queryBuilder.Select <TEntity>(); if (_required == false) { parser = parser.Optional(); } return(new EntityLayoutParser <TLayout, TSchema, TEntity>(parser, this)); }
public Parser <TSchema, TLayout> CreateQuery(TemplateQueryOptions options, IQueryBuilder <TSchema> queryBuilder) { var queries = _properties.Select(property => property.CreateQuery(options, queryBuilder)).ToArray(); return(new LayoutParser <TLayout, TSchema>(_factory, queries)); }