DocumentTypeImpl::DocumentTypeImpl(const DocumentTypeImpl &other, bool deep) : ParentNode(other) { name = other.name.clone(); if (deep) cloneChildren(other); entities = other.entities->cloneMap(this); notations= other.notations->cloneMap(this); elements = other.elements->cloneMap(this); //DOM Level 2 publicId = other.publicId.clone(); systemId = other.systemId.clone(); internalSubset = other.internalSubset.clone(); intSubsetReading = other.intSubsetReading; };
EntityImpl::EntityImpl(const EntityImpl &other, bool deep) : ParentNode(other) { name = other.name.clone(); if (deep) cloneChildren(other); publicId = other.publicId.clone(); systemId = other.systemId.clone(); notationName = other.notationName.clone(); RefCountedImpl::removeRef(refEntity); refEntity = other.refEntity; RefCountedImpl::addRef(other.refEntity); setReadOnly(true, true); } /* SPEC_CPU: removed extra ';' for C++98 standards compliance -- yag */
ASTPtr ASTExpressionList::clone() const { auto clone = std::make_shared<ASTExpressionList>(*this); clone->cloneChildren(); return std::move(clone); }