// Operations (type-safe ICloneable) /// <summary> /// /// </summary> /// <returns></returns> public ScopeCollection Clone() { ScopeCollection tc = new ScopeCollection(); tc.AddRange(this); tc.Capacity = this.m_array.Length; tc.m_version = this.m_version; return(tc); }
/// <summary> /// /// </summary> /// <param name="collection"></param> public void AddRange(ScopeCollection collection) { // for (int i=0; i < collection.Count; ++i) Add(collection[i]); ++m_version; Capacity += collection.Count; Array.Copy(collection.m_array, 0, this.m_array, m_count, collection.m_count); m_count += collection.Count; }
public BlockType() { this.KeywordsList = new PatternListList(this); this.OperatorsList = new PatternListList(this); Style = new TextStyle(); KeywordsList.Parent = this; KeywordsList.IsKeyword = true; OperatorsList.Parent = this; OperatorsList.IsOperator = true; ScopePatterns = new ScopeCollection(this); }
/// <summary> /// /// </summary> /// <param name="collection"></param> public ScopeCollection(ScopeCollection collection) { AddRange(collection); }
// Construction public Enumerator(ScopeCollection tc) { m_collection = tc; m_index = -1; m_version = tc.m_version; }
// Operations (type-safe ICloneable) /// <summary> /// /// </summary> /// <returns></returns> public ScopeCollection Clone() { ScopeCollection tc = new ScopeCollection(); tc.AddRange(this); tc.Capacity = this.m_array.Length; tc.m_version = this.m_version; return tc; }