deprecateddomcount.hpp

来自「IBM的解析xml的工具Xerces的源代码」· HPP 代码 · 共 138 行

HPP
138
字号
/* * Copyright 1999-2000,2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *//* * $Id: DeprecatedDOMCount.hpp,v 1.6 2004/09/08 13:57:03 peiyongz Exp $ */// ---------------------------------------------------------------------------//  Includes// ---------------------------------------------------------------------------#include <xercesc/sax/ErrorHandler.hpp>#include <xercesc/util/PlatformUtils.hpp>#if defined(XERCES_NEW_IOSTREAMS)#include <iostream>#else#include <iostream.h>#endifXERCES_CPP_NAMESPACE_USEXERCES_CPP_NAMESPACE_BEGINclass SAXParseException;XERCES_CPP_NAMESPACE_END// ---------------------------------------------------------------------------//  Simple error handler deriviative to install on parser// ---------------------------------------------------------------------------class DeprecatedDOMCountErrorHandler : public ErrorHandler{public:    // -----------------------------------------------------------------------    //  Constructors and Destructor    // -----------------------------------------------------------------------    DeprecatedDOMCountErrorHandler();    ~DeprecatedDOMCountErrorHandler();    // -----------------------------------------------------------------------    //  Getter methods    // -----------------------------------------------------------------------    bool getSawErrors() const;    // -----------------------------------------------------------------------    //  Implementation of the SAX ErrorHandler interface    // -----------------------------------------------------------------------    void warning(const SAXParseException& e);    void error(const SAXParseException& e);    void fatalError(const SAXParseException& e);    void resetErrors();private :    // -----------------------------------------------------------------------    //  Unimplemented constructors and operators    // -----------------------------------------------------------------------    DeprecatedDOMCountErrorHandler(const DeprecatedDOMCountErrorHandler&);    void operator=(const DeprecatedDOMCountErrorHandler&);    // -----------------------------------------------------------------------    //  Private data members    //    //  fSawErrors    //      This is set if we get any errors, and is queryable via a getter    //      method. Its used by the main code to suppress output if there are    //      errors.    // -----------------------------------------------------------------------    bool    fSawErrors;};// ---------------------------------------------------------------------------//  This is a simple class that lets us do easy (though not terribly efficient)//  trancoding of XMLCh data to local code page for display.// ---------------------------------------------------------------------------class StrX{public :    // -----------------------------------------------------------------------    //  Constructors and Destructor    // -----------------------------------------------------------------------    StrX(const XMLCh* const toTranscode)    {        // Call the private transcoding method        fLocalForm = XMLString::transcode(toTranscode);    }    ~StrX()    {        XMLString::release(&fLocalForm);    }    // -----------------------------------------------------------------------    //  Getter methods    // -----------------------------------------------------------------------    const char* localForm() const    {        return fLocalForm;    }private :    // -----------------------------------------------------------------------    //  Private data members    //    //  fLocalForm    //      This is the local code page form of the string.    // -----------------------------------------------------------------------    char*   fLocalForm;};inline XERCES_STD_QUALIFIER ostream& operator<<(XERCES_STD_QUALIFIER ostream& target, const StrX& toDump){    target  << toDump.localForm();    return target;}inline bool DeprecatedDOMCountErrorHandler::getSawErrors() const{    return fSawErrors;}

⌨️ 快捷键说明

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