1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-08-13 03:17:10 +02:00
Files
bin
module
vendor
ConcurrentQueue
Fmt
MaxmindDB
POCO
ApacheConnector
CppParser
CppUnit
Crypto
Data
Encodings
Foundation
JSON
JWT
MongoDB
Net
NetSSL_OpenSSL
NetSSL_Win
PDF
PageCompiler
PocoDoc
ProGen
Redis
SevenZip
Util
XML
cmake
include
Poco
DOM
AbstractContainerNode.h
AbstractNode.h
Attr.h
AttrMap.h
AutoPtr.h
CDATASection.h
CharacterData.h
ChildNodesList.h
Comment.h
DOMBuilder.h
DOMException.h
DOMImplementation.h
DOMObject.h
DOMParser.h
DOMSerializer.h
DOMWriter.h
DTDMap.h
Document.h
DocumentEvent.h
DocumentFragment.h
DocumentType.h
Element.h
ElementsByTagNameList.h
Entity.h
EntityReference.h
Event.h
EventDispatcher.h
EventException.h
EventListener.h
EventTarget.h
MutationEvent.h
NamedNodeMap.h
Node.h
NodeAppender.h
NodeFilter.h
NodeIterator.h
NodeList.h
Notation.h
ProcessingInstruction.h
Text.h
TreeWalker.h
SAX
XML
samples
src
testsuite
CMakeLists.txt
Makefile
XML.progen
XML_vs140.sln
XML_vs140.vcxproj
XML_vs140.vcxproj.filters
XML_vs150.sln
XML_vs150.vcxproj
XML_vs150.vcxproj.filters
XML_vs160.sln
XML_vs160.vcxproj
XML_vs160.vcxproj.filters
XML_vs90.sln
XML_vs90.vcproj
dependencies
Zip
appveyor
build
cmake
contrib
doc
packaging
patches
release
travis
.gitattributes
.gitignore
.gitmodules
.travis.yml
CHANGELOG
CMakeLists.txt
CODE_OF_CONDUCT.md
CONTRIBUTING.md
CONTRIBUTORS
LICENSE
Makefile
NEWS
README
README.md
VERSION
appveyor.yml
build_cmake.cmd
build_cmake.sh
build_vs140.cmd
build_vs150.cmd
build_vs160.cmd
buildwin.cmd
buildwin.ps1
components
configure
cppignore.lnx
cppignore.win
env.bat
env.sh
libversion
SimpleIni
Squirrel
TinyDir
ZMQ
CMakeLists.txt
.gitignore
.gitmodules
CMakeLists.txt
LICENSE
README.md
SqMod/vendor/POCO/XML/include/Poco/DOM/DOMException.h
Sandu Liviu Catalin 4a6bfc086c Major plugin refactor and cleanup.
Switched to POCO library for unified platform/library interface.
Deprecated the external module API. It was creating more problems than solving.
Removed most built-in libraries in favor of system libraries for easier maintenance.
Cleaned and secured code with help from static analyzers.
2021-01-30 08:51:39 +02:00

113 lines
3.6 KiB
C++

//
// DOMException.h
//
// Library: XML
// Package: DOM
// Module: DOM
//
// Definition of the DOM DOMException class.
//
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
#ifndef DOM_DOMException_INCLUDED
#define DOM_DOMException_INCLUDED
#include "Poco/XML/XML.h"
#include "Poco/XML/XMLException.h"
namespace Poco {
namespace XML {
class XML_API DOMException: public XMLException
/// DOM operations only raise exceptions in "exceptional" circumstances, i.e.,
/// when an operation is impossible to perform (either for logical reasons,
/// because data is lost, or because the implementation has become unstable).
/// In general, DOM methods return specific error values in ordinary processing
/// situations, such as out-of-bound errors when using NodeList.
///
/// Implementations should raise other exceptions under other circumstances.
/// For example, implementations should raise an implementation-dependent exception
/// if a null argument is passed when null was not expected.
{
public:
enum
{
INDEX_SIZE_ERR = 1, /// index or size is negative or greater than allowed value
DOMSTRING_SIZE_ERR, /// the specified range of text does not fit into a DOMString (not used)
HIERARCHY_REQUEST_ERR, /// a node is inserted somewhere it doesn't belong
WRONG_DOCUMENT_ERR, /// a node is used in a different document than the one that created it
INVALID_CHARACTER_ERR, /// an invalid character is specified (not used)
NO_DATA_ALLOWED_ERR, /// data is specified for a node which does not support data
NO_MODIFICATION_ALLOWED_ERR, /// an attempt is made to modify an object where modifications are not allowed
NOT_FOUND_ERR, /// an attempt was made to reference a node in a context where it does not exist
NOT_SUPPORTED_ERR, /// the implementation does not support the type of object requested
INUSE_ATTRIBUTE_ERR, /// an attempt is made to add an attribute that is already in use elsewhere
INVALID_STATE_ERR, /// a parameter or an operation is not supported by the underlying object
SYNTAX_ERR, /// an invalid or illegal string is specified
INVALID_MODIFICATION_ERR, /// an attempt is made to modify the type of the underlying object
NAMESPACE_ERR, /// an attempt is made to create or change an object in a way which is incorrect with regard to namespaces
INVALID_ACCESS_ERR, /// an attempt is made to use an object that is not, or is no longer, usable
_NUMBER_OF_MESSAGES
};
DOMException(unsigned short code);
/// Creates a DOMException with the given error code.
DOMException(const DOMException& exc);
/// Creates a DOMException by copying another one.
~DOMException() noexcept;
/// Destroys the DOMException.
DOMException& operator = (const DOMException& exc);
const char* name() const noexcept;
/// Returns a static string describing the exception.
const char* className() const noexcept;
/// Returns the name of the exception class.
Poco::Exception* clone() const;
/// Creates an exact copy of the exception.
void rethrow() const;
/// (Re)Throws the exception.
unsigned short code() const;
/// Returns the DOM exception code.
protected:
static const std::string& message(unsigned short code);
private:
DOMException();
unsigned short _code;
static const std::string MESSAGES[_NUMBER_OF_MESSAGES];
};
//
// inlines
//
inline unsigned short DOMException::code() const
{
return _code;
}
} } // namespace Poco::XML
#endif // DOM_DOMException_INCLUDED