Beispiel #1
0
        override public object Clone()
        {
            SpliceParameterDeclaration clone = (SpliceParameterDeclaration)FormatterServices.GetUninitializedObject(typeof(SpliceParameterDeclaration));

            clone._lexicalInfo       = _lexicalInfo;
            clone._endSourceLocation = _endSourceLocation;
            clone._documentation     = _documentation;
            clone._isSynthetic       = _isSynthetic;
            clone._entity            = _entity;
            if (_annotations != null)
            {
                clone._annotations = (Hashtable)_annotations.Clone();
            }

            clone._name = _name;
            if (null != _type)
            {
                clone._type = _type.Clone() as TypeReference;
                clone._type.InitializeParent(clone);
            }
            clone._modifiers = _modifiers;
            if (null != _attributes)
            {
                clone._attributes = _attributes.Clone() as AttributeCollection;
                clone._attributes.InitializeParent(clone);
            }
            if (null != _parameterDeclaration)
            {
                clone._parameterDeclaration = _parameterDeclaration.Clone() as ParameterDeclaration;
                clone._parameterDeclaration.InitializeParent(clone);
            }
            if (null != _nameExpression)
            {
                clone._nameExpression = _nameExpression.Clone() as Expression;
                clone._nameExpression.InitializeParent(clone);
            }
            return(clone);
        }