/// <summary> /// CTOR used by <see cref="Clone"/> /// </summary> /// <param name="cloneFrom">Variable to be cloned</param> private DmnResultVariable(DmnResultVariable cloneFrom) { if (cloneFrom == null) { throw new ArgumentNullException(nameof(cloneFrom)); } Name = cloneFrom.Name; Type = cloneFrom.Type; IsInputParameter = cloneFrom.IsInputParameter; if (cloneFrom.Value is ICloneable cloneableValue) { Value = cloneableValue.Clone(); } else { Value = cloneFrom.Value; } }
/// <summary> /// Clones the variable /// </summary> /// <returns>Cloned variable</returns> public virtual DmnResultVariable Clone() { var retVal = new DmnResultVariable(this); return(retVal); }