⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 complextypeinfo.hpp

📁 开源xml解析库,非常有名
💻 HPP
📖 第 1 页 / 共 2 页
字号:
    return fContentType;}inline unsigned int ComplexTypeInfo::elementCount() const {    if (fElements) {        return fElements->size();    }    return 0;}inline XMLCh* ComplexTypeInfo::getTypeName() const {    return fTypeName;}inline DatatypeValidator* ComplexTypeInfo::getBaseDatatypeValidator() const {    return fBaseDatatypeValidator;}inline DatatypeValidator* ComplexTypeInfo::getDatatypeValidator() const {    return fDatatypeValidator;}inline ComplexTypeInfo* ComplexTypeInfo::getBaseComplexTypeInfo() const {    return fBaseComplexTypeInfo;}inline ContentSpecNode* ComplexTypeInfo::getContentSpec() const {    return fContentSpec;}inline const SchemaAttDef* ComplexTypeInfo::getAttWildCard() const {    return fAttWildCard;}inline SchemaAttDef* ComplexTypeInfo::getAttWildCard() {    return fAttWildCard;}inline const SchemaAttDef* ComplexTypeInfo::getAttDef(const XMLCh* const baseName,                                                      const int uriId) const {    return fAttDefs->get(baseName, uriId);}inline SchemaAttDef* ComplexTypeInfo::getAttDef(const XMLCh* const baseName,                                                const int uriId){    return fAttDefs->get(baseName, uriId);}inline SchemaElementDecl*ComplexTypeInfo::elementAt(const unsigned int index) {    if (!fElements) {        return 0; // REVISIT - need to throw an exception    }    return fElements->elementAt(index);}inline const SchemaElementDecl*ComplexTypeInfo::elementAt(const unsigned int index) const {    if (!fElements) {        return 0; // REVISIT - need to throw an exception    }    return fElements->elementAt(index);}inline XMLContentModel* ComplexTypeInfo::getContentModel(const bool checkUPA){    if (!fContentModel && fContentSpec)        fContentModel = makeContentModel(checkUPA);    return fContentModel;}inline XSDLocator* ComplexTypeInfo::getLocator() const{    return fLocator;}inline bool ComplexTypeInfo::getAnonymous() const {    return fAnonymous;}inline const XMLCh* ComplexTypeInfo::getTypeLocalName() const{    return fTypeLocalName;}inline const XMLCh* ComplexTypeInfo::getTypeUri() const{   return fTypeUri;}// ---------------------------------------------------------------------------//  ComplexTypeInfo: Setter methods// ---------------------------------------------------------------------------inline void ComplexTypeInfo::setAbstract(const bool isAbstract) {    fAbstract = isAbstract;}inline void ComplexTypeInfo::setAdoptContentSpec(const bool toAdopt) {    fAdoptContentSpec = toAdopt;}inline void ComplexTypeInfo::setAttWithTypeId(const bool value) {    fAttWithTypeId = value;}inline void ComplexTypeInfo::setPreprocessed(const bool aValue) {    fPreprocessed = aValue;}inline void ComplexTypeInfo::setDerivedBy(const int derivedBy) {    fDerivedBy = derivedBy;}inline void ComplexTypeInfo::setBlockSet(const int blockSet) {    fBlockSet = blockSet;}inline void ComplexTypeInfo::setFinalSet(const int finalSet) {    fFinalSet = finalSet;}inline void ComplexTypeInfo::setScopeDefined(const int scopeDefined) {    fScopeDefined = scopeDefined;}inline void ComplexTypeInfo::setElementId(const unsigned int elemId) {    fElementId = elemId;}inline voidComplexTypeInfo::setContentType(const int contentType) {    fContentType = contentType;}inline void ComplexTypeInfo::setTypeName(const XMLCh* const typeName) {    fMemoryManager->deallocate(fTypeName);//delete [] fTypeName;    fMemoryManager->deallocate(fTypeLocalName);//delete [] fTypeLocalName;    fMemoryManager->deallocate(fTypeUri);//delete [] fTypeUri;        if (typeName)    {        fTypeName = XMLString::replicate(typeName, fMemoryManager);        int index = XMLString::indexOf(fTypeName, chComma);        int length = XMLString::stringLen(fTypeName);        fTypeLocalName = (XMLCh*) fMemoryManager->allocate        (            (length - index + 1) * sizeof(XMLCh)        ); //new XMLCh[length - index + 1];        XMLString::subString(fTypeLocalName, fTypeName, index + 1, length, fMemoryManager);                fTypeUri = (XMLCh*) fMemoryManager->allocate        (            (index + 1) * sizeof(XMLCh)        ); //new XMLCh[index + 1];        XMLString::subString(fTypeUri, fTypeName, 0, index, fMemoryManager);            }    else    {        fTypeName = fTypeLocalName = fTypeUri = 0;    }}inline voidComplexTypeInfo::setBaseDatatypeValidator(DatatypeValidator* const validator) {    fBaseDatatypeValidator = validator;}inline voidComplexTypeInfo::setDatatypeValidator(DatatypeValidator* const validator) {    fDatatypeValidator = validator;}inline voidComplexTypeInfo::setBaseComplexTypeInfo(ComplexTypeInfo* const typeInfo) {    fBaseComplexTypeInfo = typeInfo;}inline void ComplexTypeInfo::addElement(SchemaElementDecl* const elem) {    if (!fElements) {        fElements = new (fMemoryManager) RefVectorOf<SchemaElementDecl>(8, false, fMemoryManager);    }    else if (fElements->containsElement(elem)) {        return;    }    fElements->addElement(elem);}inline void ComplexTypeInfo::setAttWildCard(SchemaAttDef* const toAdopt) {    if (fAttWildCard) {       delete fAttWildCard;    }    fAttWildCard = toAdopt;}inline voidComplexTypeInfo::setContentModel(XMLContentModel* const newModelToAdopt){    delete fContentModel;    fContentModel = newModelToAdopt;    // reset formattedModel    if (fFormattedModel)    {        fMemoryManager->deallocate(fFormattedModel);        fFormattedModel = 0;    }}inline void ComplexTypeInfo::setAnonymous() {    fAnonymous = true;}// ---------------------------------------------------------------------------//  ComplexTypeInfo: Helper methods// ---------------------------------------------------------------------------inline bool ComplexTypeInfo::hasAttDefs() const{    return !fAttDefs->isEmpty();}inline bool ComplexTypeInfo::contains(const XMLCh* const attName) {    RefHash2KeysTableOfEnumerator<SchemaAttDef> enumDefs(fAttDefs, false, fMemoryManager);    while (enumDefs.hasMoreElements()) {        if (XMLString::equals(attName, enumDefs.nextElement().getAttName()->getLocalPart())) {            return true;        }    }    return false;}XERCES_CPP_NAMESPACE_END#endif/**  * End of file ComplexTypeInfo.hpp  */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -