2 types derived from Tile
System.Data.Entity (2)
System\Data\Mapping\ViewGeneration\QueryRewriting\Tile.cs (2)
179internal class TileNamed<T_Query> : Tile<T_Query> where T_Query : ITileQuery 211internal class TileBinaryOperator<T_Query> : Tile<T_Query> where T_Query : ITileQuery
94 references to Tile
System.Data.Entity (94)
System\Data\Mapping\ViewGeneration\QueryRewriting\QueryRewriter.cs (47)
50RewritingProcessor<Tile<FragmentQuery>> _qp; 55List<Tile<FragmentQuery>> _views = new List<Tile<FragmentQuery>>(); 71static Tile<FragmentQuery> TrueViewSurrogate = CreateTile(FragmentQuery.Create(BoolExpression.True)); 87_qp = new RewritingProcessor<Tile<FragmentQuery>>(new DefaultTileProcessor<FragmentQuery>(context.LeftFragmentQP)); 95Tile<FragmentQuery> tile = CreateTile(query); 271Tile<FragmentQuery> caseRewriting; 279CellTreeNode cellTree = TileToCellTree((Tile<FragmentQuery>)caseRewriting, _context); 341private bool AddRewritingToCaseStatement(Tile<FragmentQuery> rewriting, CaseStatement caseStatement, MemberPath currentPath, Constant domainValue) 372whenCondition = TileToBoolExpr((Tile<FragmentQuery>)rewriting); 405Tile<FragmentQuery> rewriting; 509Tile<FragmentQuery> unionCaseRewriting = null; 535Tile<FragmentQuery> caseRewriting; 602CellTreeNode rightDomainQuery, Tile<FragmentQuery> unionCaseRewriting) 642Tile<FragmentQuery> topLevelRewriting; 694Tile<FragmentQuery> noNullToAvoid = CreateTile(FragmentQuery.Create(_keyAttributes, BoolExpression.CreateNot(fragmentQuery.Condition))); 695Tile<FragmentQuery> noNullRewriting; 709foreach (Tile<FragmentQuery> toFill in _views) 711Tile<FragmentQuery> rewriting; 712Tile<FragmentQuery> toAvoid = CreateTile(FragmentQuery.Create(_keyAttributes, BoolExpression.CreateNot(toFill.Query.Condition))); 805HashSet<FragmentQuery> outputUsedViews, out Tile<FragmentQuery> rewriting) 815HashSet<FragmentQuery> outputUsedViews, out Tile<FragmentQuery> rewriting, 828out Tile<FragmentQuery> rewriting, out IEnumerable<MemberPath> notCoveredAttributes) 830Tile<FragmentQuery> toFill = CreateTile(FragmentQuery.Create(attributes, whereClause)); 832Tile<FragmentQuery> toAvoid = CreateTile(FragmentQuery.Create(_keyAttributes, BoolExpression.CreateNot(whereClause))); 841private bool RewriteQuery(Tile<FragmentQuery> toFill, Tile<FragmentQuery> toAvoid, out Tile<FragmentQuery> rewriting, out IEnumerable<MemberPath> notCoveredAttributes, 854IEnumerable<Tile<FragmentQuery>> relevantViews = GetRelevantViews(toFillQuery, isRelaxed); 921private bool RewriteQueryCached(Tile<FragmentQuery> toFill, Tile<FragmentQuery> toAvoid, 922IEnumerable<Tile<FragmentQuery>> views, out Tile<FragmentQuery> rewriting) 940private bool CoverAttributes(ref Tile<FragmentQuery> rewriting, FragmentQuery toFillQuery, 960Tile<FragmentQuery> attributeTile = null; 1010private IEnumerable<Tile<FragmentQuery>> GetRelevantViews(FragmentQuery query, bool isRelaxed) 1028Tile<FragmentQuery> unionOfConnectedViews = null; 1029List<Tile<FragmentQuery>> connectedViews = new List<Tile<FragmentQuery>>(); 1030Tile<FragmentQuery> firstTrueView = null; 1031foreach (Tile<FragmentQuery> tile in _views) 1055Tile<FragmentQuery> unionTile = null; 1083private HashSet<FragmentQuery> GetUsedViewsAndRemoveTrueSurrogate(ref Tile<FragmentQuery> rewriting) 1094Tile<FragmentQuery> unionTile = null; 1183internal static CellTreeNode TileToCellTree(Tile<FragmentQuery> tile, ViewgenContext context) 1206private static BoolExpression TileToBoolExpr(Tile<FragmentQuery> tile) 1267private void PrintStatistics(RewritingProcessor<Tile<FragmentQuery>> qp)
System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingValidator.cs (1)
206Tile<FragmentQuery> rewriting;
System\Data\Mapping\ViewGeneration\QueryRewriting\Tile.cs (42)
43internal class DefaultTileProcessor<T_Query> : TileProcessor<Tile<T_Query>> where T_Query : ITileQuery 57internal override bool IsEmpty(Tile<T_Query> tile) 62internal override Tile<T_Query> Union(Tile<T_Query> arg1, Tile<T_Query> arg2) 67internal override Tile<T_Query> Join(Tile<T_Query> arg1, Tile<T_Query> arg2) 72internal override Tile<T_Query> AntiSemiJoin(Tile<T_Query> arg1, Tile<T_Query> arg2) 77internal override Tile<T_Query> GetArg1(Tile<T_Query> tile) 82internal override Tile<T_Query> GetArg2(Tile<T_Query> tile) 87internal override TileOpKind GetOpKind(Tile<T_Query> tile) 92internal bool IsContainedIn(Tile<T_Query> arg1, Tile<T_Query> arg2) 97internal bool IsEquivalentTo(Tile<T_Query> arg1, Tile<T_Query> arg2) 126private static IEnumerable<T_Query> GetNamedQueries(Tile<T_Query> rewriting) 161public abstract Tile<T_Query> Arg1 166public abstract Tile<T_Query> Arg2 176internal abstract Tile<T_Query> Replace(Tile<T_Query> oldTile, Tile<T_Query> newTile); 192public override Tile<T_Query> Arg1 { get { return null; } } 193public override Tile<T_Query> Arg2 { get { return null; } } 205internal override Tile<T_Query> Replace(Tile<T_Query> oldTile, Tile<T_Query> newTile) 213private readonly Tile<T_Query> m_arg1; 214private readonly Tile<T_Query> m_arg2; 216public TileBinaryOperator(Tile<T_Query> arg1, Tile<T_Query> arg2, TileOpKind opKind, T_Query query) 224public override Tile<T_Query> Arg1 { get { return m_arg1; } } 225public override Tile<T_Query> Arg2 { get { return m_arg2; } } 243internal override Tile<T_Query> Replace(Tile<T_Query> oldTile, Tile<T_Query> newTile) 245Tile<T_Query> newArg1 = Arg1.Replace(oldTile, newTile); 246Tile<T_Query> newArg2 = Arg2.Replace(oldTile, newTile);
System\Data\Mapping\ViewGeneration\ViewgenContext.cs (4)
51private Dictionary<FragmentQuery, Tile<FragmentQuery>> m_rewritingCache; 88m_rewritingCache = new Dictionary<FragmentQuery, Tile<FragmentQuery>>( 225internal bool TryGetCachedRewriting(FragmentQuery query, out Tile<FragmentQuery> rewriting) 231internal void SetCachedRewriting(FragmentQuery query, Tile<FragmentQuery> rewriting)