public bool Add(DictionarySet.IMember Item) { bool setChanged = false; InsertIndexInfo info = this.InsertIndex(Item.Key()); if (info.Found > 0) { DictionarySet.MemberResult result = this.m_List[info.Index].Union(Item); if ((result != null) && (result.NewObject != null)) { this.m_List[info.Index] = result.NewObject; setChanged = result.SetChanged; } return(setChanged); } setChanged = true; this.ResizeArray(this.m_Count + 1); int num2 = info.Index + 1; for (int i = this.m_Count - 1; i >= num2; i += -1) { this.m_List[i] = this.m_List[i - 1]; } this.m_List[info.Index] = Item; return(setChanged); }
public DictionarySet.MemberResult Union(DictionarySet.IMember Obj) { ConfigTrack track2 = (ConfigTrack)Obj; return(new DictionarySet.MemberResult(new ConfigTrack(this) { FromConfig = this.FromConfig | track2.FromConfig, FromFirst = this.FromFirst | track2.FromFirst })); }
public DictionarySet.MemberResult Union(DictionarySet.IMember Obj) { LookaheadSymbol symbol = (LookaheadSymbol)Obj; return(new DictionarySet.MemberResult(new LookaheadSymbol { Parent = this.Parent, Configs = new ConfigTrackSet(this.Configs, symbol.Configs) })); }
public DictionarySet.MemberResult Union(DictionarySet.IMember NewObject) { bool flag; LRConfig config = (LRConfig)NewObject; LRConfig newObject = new LRConfig(this); if (newObject.LookaheadSet.UnionWith(config.LookaheadSet)) { flag = true; newObject.Modified = true; } else { newObject.Modified = this.Modified | config.Modified; flag = false; } newObject.InheritLookahead = this.InheritLookahead | config.InheritLookahead; return(new DictionarySet.MemberResult(newObject, flag)); }
public DictionarySet.MemberResult Intersect(DictionarySet.IMember NewObject) { return(null); }
public DictionarySet.MemberResult Difference(DictionarySet.IMember NewObject) { return(null); }
public DictionarySet.MemberResult Intersect(DictionarySet.IMember NewObject) { return(new DictionarySet.MemberResult(this)); }
public MemberResult(DictionarySet.IMember NewObject, bool SetChanged) { this.NewObject = NewObject; this.SetChanged = SetChanged; }
// Methods public MemberResult(DictionarySet.IMember NewObject) { this.NewObject = NewObject; this.SetChanged = false; }