/// <summary> An AttributeSource using the supplied {@link AttributeFactory} for creating new {@link Attribute} instances.</summary> public AttributeSource(AttributeFactory factory) { this.attributes = new Support.GeneralKeyedCollection <Type, Support.AttributeImplItem>(delegate(Support.AttributeImplItem att) { return(att.Key); }); this.attributeImpls = new Support.GeneralKeyedCollection <Type, Support.AttributeImplItem>(delegate(Support.AttributeImplItem att) { return(att.Key); }); this.currentState = new State[1]; this.factory = factory; }
/// <summary> An AttributeSource that uses the same attributes as the supplied one.</summary> public AttributeSource(AttributeSource input) { if (input == null) { throw new System.ArgumentException("input AttributeSource must not be null"); } this.attributes = input.attributes; this.attributeImpls = input.attributeImpls; this.currentState = input.currentState; this.factory = input.factory; }