// ------------------------------------------ // CLONING // ------------------------------------------ #region Cloning /// <summary> /// Clones this instance. /// </summary> /// <returns>Returns a clone of this instance.</returns> public override object Clone(params string[] areas) { IBdoScriptword scriptWord = base.Clone(areas) as BdoScriptword; scriptWord.SetDefinition(Definition); //scriptWord.SetConfiguration(Configuration); if (Parameters != null) { foreach (var paramValue in Parameters) { scriptWord.AddParameter(paramValue); } } scriptWord.Parent = Parent; scriptWord.SubScriptword = SubScriptword?.Clone <BdoScriptword>(); scriptWord.Item = Item; return(scriptWord); }
/// <summary> /// Gets the last target of this instance. /// </summary> /// <returns>Returns the last target of this instance.</returns> public IBdoScriptword Last() { return(SubScriptword == null ? this : SubScriptword.Last()); }