• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
3  *
4  *  This library is free software; you can redistribute it and/or
5  *  modify it under the terms of the GNU Lesser General Public
6  *  License as published by the Free Software Foundation; either
7  *  version 2 of the License, or (at your option) any later version.
8  *
9  *  This library is distributed in the hope that it will be useful,
10  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  *  Lesser General Public License for more details.
13  *
14  *  You should have received a copy of the GNU Lesser General Public
15  *  License along with this library; if not, write to the Free Software
16  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17  */
18 
19 #ifndef ExceptionCode_h
20 #define ExceptionCode_h
21 
22 namespace WebCore {
23 
24     // The DOM standards use unsigned short for exception codes.
25     // In our DOM implementation we use int instead, and use different
26     // numerical ranges for different types of DOM exception, so that
27     // an exception of any type can be expressed with a single integer.
28     typedef int ExceptionCode;
29 
30 
31     // Some of these are considered historical since they have been
32     // changed or removed from the specifications.
33     enum {
34         IndexSizeError = 1,
35         HierarchyRequestError,
36         WrongDocumentError,
37         InvalidCharacterError,
38         NoModificationAllowedError,
39         NotFoundError,
40         NotSupportedError,
41         InUseAttributeError, // Historical. Only used in setAttributeNode etc which have been removed from the DOM specs.
42 
43         // Introduced in DOM Level 2:
44         InvalidStateError,
45         SyntaxError,
46         InvalidModificationError,
47         NamespaceError,
48         InvalidAccessError,
49 
50         // Introduced in DOM Level 3:
51         TypeMismatchError, // Historical; use TypeError instead
52 
53         // XMLHttpRequest extension:
54         SecurityError,
55 
56         // Others introduced in HTML5:
57         NetworkError,
58         AbortError,
59         URLMismatchError,
60         QuotaExceededError,
61         TimeoutError,
62         InvalidNodeTypeError,
63         DataCloneError,
64 
65         // These are IDB-specific.
66         UnknownError,
67         ConstraintError,
68         DataError,
69         TransactionInactiveError,
70         ReadOnlyError,
71         VersionError,
72 
73         // File system
74         NotReadableError,
75         EncodingError,
76         PathExistsError,
77 
78         // SQL
79         SQLDatabaseError, // Naming conflict with DatabaseError class.
80 
81         // Web Crypto
82         OperationError,
83 
84         // WebIDL exception types, handled by the binding layer.
85         // FIXME: Add GeneralError, EvalError, etc. when implemented in the bindings.
86         TypeError,
87     };
88 
89 } // namespace WebCore
90 
91 #endif // ExceptionCode_h
92