private IEnumerator IterateIndex(FieldIndexProcessorResult result) { if (result.NoMatch()) { return(Iterators.EmptyIterator); } if (result.FoundIndex()) { return(result.IterateIDs()); } if (!i_classMetadata.HasClassIndex()) { return(Iterators.EmptyIterator); } return(BTreeClassIndexStrategy.Iterate(i_classMetadata, i_trans)); }
internal void Execute() { if (DTrace.enabled) { DTrace.QueryProcess.Log(); } FieldIndexProcessorResult result = ProcessFieldIndexes(); if (result.FoundIndex()) { i_root = result.ToQCandidate(this); } else { LoadFromClassIndex(); } Evaluate(); }