internal protected virtual void AssignExcludingRedirects(FtMetaSequence source, FtMetaFieldList fieldList, FtMetaFieldList sourceFieldList) { Name = source.Name; root = source.Root; itemList.AssignExcludingRedirects(source.itemList, fieldList, sourceFieldList); }
public FtMetaSequence New() { FtMetaSequence result = SequenceFactory.CreateMetaSequence(); Add(result); return(result); }
internal FtMetaSequence CreateCopyExcludingRedirects(FtMetaFieldList fieldList, FtMetaFieldList sourceFieldList) { FtMetaSequence sequence = SequenceFactory.CreateMetaSequence(); sequence.AssignExcludingRedirects(this, fieldList, sourceFieldList); return(sequence); }
public void Remove(FtMetaSequence sequence) { int idx = list.IndexOf(sequence); if (idx >= 0) { RemoveAt(idx); } }
private void HandleSequenceRootedEvent(FtMetaSequence rootedSequence) { foreach (FtMetaSequence sequence in list) { if ((sequence != rootedSequence) && sequence.Root) { sequence.Root = false; } } }
public int IndexOfName(string name) { int result = -1; for (int i = 0; i < Count; i++) { if (FtMetaSequence.SameName(list[i].Name, name)) { result = i; break; } } return(result); }
internal void Assign(FtMetaSequenceList source, FtMetaFieldList fieldList, FtMetaFieldList sourceFieldList) { list.Clear(); list.Capacity = source.Count; for (int i = 0; i < source.Count; i++) { FtMetaSequence sequence = source[i].CreateCopyExcludingRedirects(fieldList, sourceFieldList); Add(sequence); } // All Sequences need to be created before we can assign Redirects for (int i = 0; i < Count; i++) { list[i].AssignRedirects(this, source); } }
private void Add(FtMetaSequence sequence) { list.Add(sequence); BindSequenceEvents(sequence); }
private void UnbindSequenceEvents(FtMetaSequence sequence) { sequence.RootedEvent -= HandleSequenceRootedEvent; }
public int IndexOf(FtMetaSequence sequence) { return(list.IndexOf(sequence)); }