/// <summary> /// Create an <see cref="LSLFunctionCallNode" /> by cloning from another. /// </summary> /// <param name="other">The other node to clone from.</param> /// <exception cref="ArgumentNullException"><paramref name="other" /> is <c>null</c>.</exception> private LSLFunctionCallNode(LSLFunctionCallNode other) { if (other == null) { throw new ArgumentNullException("other"); } SourceRangesAvailable = other.SourceRangesAvailable; if (SourceRangesAvailable) { SourceRange = other.SourceRange; SourceRangeOpenParenth = other.SourceRangeOpenParenth; SourceRangeCloseParenth = other.SourceRangeCloseParenth; SourceRangeName = other.SourceRangeName; } Name = other.Name; Definition = other.Definition; Signature = new LSLFunctionSignature(other.Signature); _libraryFunction = other._libraryFunction; ArgumentExpressionList = other.ArgumentExpressionList.Clone(); ArgumentExpressionList.Parent = this; HasErrors = other.HasErrors; }
internal void AddReference(LSLFunctionCallNode reference) { _references.Add(reference); }