/// <inheritdoc />
        public override CdmObject Copy(ResolveOptions resOpt = null, CdmObject host = null)
        {
            if (resOpt == null)
            {
                resOpt = new ResolveOptions(this, this.Ctx.Corpus.DefaultResolutionDirectives);
            }

            CdmReferencedEntityDeclarationDefinition copy;

            if (host == null)
            {
                copy = new CdmReferencedEntityDeclarationDefinition(this.Ctx, this.EntityName);
            }
            else
            {
                copy            = host as CdmReferencedEntityDeclarationDefinition;
                copy.EntityName = this.EntityName;
            }

            copy.EntityPath = this.EntityPath;
            copy.LastFileStatusCheckTime = this.LastFileStatusCheckTime;
            copy.LastFileModifiedTime    = this.LastFileModifiedTime;

            this.CopyDef(resOpt, copy);

            return(copy);
        }
        /// <inheritdoc />
        public override CdmObject Copy(ResolveOptions resOpt = null)
        {
            if (resOpt == null)
            {
                resOpt = new ResolveOptions(this);
            }

            var copy =
                new CdmReferencedEntityDeclarationDefinition(this.Ctx, this.EntityName)
            {
                EntityPath = this.EntityPath,
                LastFileStatusCheckTime = this.LastFileStatusCheckTime,
                LastFileModifiedTime    = this.LastFileModifiedTime
            };

            this.CopyDef(resOpt, copy);

            return(copy);
        }