/// <summary> /// 克隆当前元素到新的宿主模板 /// </summary> /// <param name="ownerTemplate"></param> /// <returns></returns> public override Element Clone(Template ownerTemplate) { FunctionTag tag = new FunctionTag(ownerTemplate); this.CopyTo(tag); tag.Variable = this.Variable == null ? null : this.Variable.Clone(ownerTemplate); tag.Output = this.Output; foreach (IExpression exp in this.FunctionArgs) { tag.FunctionArgs.Add(exp.Clone(ownerTemplate)); } return(tag); }
/// <summary> /// 克隆当前元素到新的宿主模板 /// </summary> /// <param name="ownerTemplate"></param> /// <returns></returns> internal override Element Clone(Template ownerTemplate) { FunctionTag tag = new FunctionTag(ownerTemplate); this.CopyTo(tag); tag.Variable = this.Variable == null ? null : this.Variable.Clone(ownerTemplate); tag.Output = this.Output; foreach (IExpression exp in this.FunctionArgs) { tag.FunctionArgs.Add(exp.Clone(ownerTemplate)); } return tag; }