Mercurial > projects > dstep
comparison dstep/foundation/NSXMLParser.d @ 14:89f3c3ef1fd2
Added the Foundation framework
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Mon, 03 Aug 2009 15:23:15 +0200 |
parents | |
children | 19885b43130e |
comparison
equal
deleted
inserted
replaced
13:4f583f7e242e | 14:89f3c3ef1fd2 |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Aug 3, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.foundation.NSXMLParser; | |
8 | |
9 import dstep.foundation.NSData; | |
10 import dstep.foundation.NSDictionary; | |
11 import dstep.foundation.NSError; | |
12 import dstep.foundation.NSObject; | |
13 import dstep.foundation.NSString; | |
14 import dstep.foundation.NSURL; | |
15 import dstep.objc.bridge.Bridge; | |
16 import dstep.objc.objc : id; | |
17 | |
18 import bindings = dstep.foundation.NSXMLParser_bindings; | |
19 | |
20 alias NSInteger NSXMLParserError; | |
21 | |
22 const NSString NSXMLParserErrorDomain; | |
23 | |
24 enum | |
25 { | |
26 NSXMLParserInternalError = 1, | |
27 NSXMLParserOutOfMemoryError = 2, | |
28 NSXMLParserDocumentStartError = 3, | |
29 NSXMLParserEmptyDocumentError = 4, | |
30 NSXMLParserPrematureDocumentEndError = 5, | |
31 NSXMLParserInvalidHexCharacterRefError = 6, | |
32 NSXMLParserInvalidDecimalCharacterRefError = 7, | |
33 NSXMLParserInvalidCharacterRefError = 8, | |
34 NSXMLParserInvalidCharacterError = 9, | |
35 NSXMLParserCharacterRefAtEOFError = 10, | |
36 NSXMLParserCharacterRefInPrologError = 11, | |
37 NSXMLParserCharacterRefInEpilogError = 12, | |
38 NSXMLParserCharacterRefInDTDError = 13, | |
39 NSXMLParserEntityRefAtEOFError = 14, | |
40 NSXMLParserEntityRefInPrologError = 15, | |
41 NSXMLParserEntityRefInEpilogError = 16, | |
42 NSXMLParserEntityRefInDTDError = 17, | |
43 NSXMLParserParsedEntityRefAtEOFError = 18, | |
44 NSXMLParserParsedEntityRefInPrologError = 19, | |
45 NSXMLParserParsedEntityRefInEpilogError = 20, | |
46 NSXMLParserParsedEntityRefInInternalSubsetError = 21, | |
47 NSXMLParserEntityReferenceWithoutNameError = 22, | |
48 NSXMLParserEntityReferenceMissingSemiError = 23, | |
49 NSXMLParserParsedEntityRefNoNameError = 24, | |
50 NSXMLParserParsedEntityRefMissingSemiError = 25, | |
51 NSXMLParserUndeclaredEntityError = 26, | |
52 NSXMLParserUnparsedEntityError = 28, | |
53 NSXMLParserEntityIsExternalError = 29, | |
54 NSXMLParserEntityIsParameterError = 30, | |
55 NSXMLParserUnknownEncodingError = 31, | |
56 NSXMLParserEncodingNotSupportedError = 32, | |
57 NSXMLParserStringNotStartedError = 33, | |
58 NSXMLParserStringNotClosedError = 34, | |
59 NSXMLParserNamespaceDeclarationError = 35, | |
60 NSXMLParserEntityNotStartedError = 36, | |
61 NSXMLParserEntityNotFinishedError = 37, | |
62 NSXMLParserLessThanSymbolInAttributeError = 38, | |
63 NSXMLParserAttributeNotStartedError = 39, | |
64 NSXMLParserAttributeNotFinishedError = 40, | |
65 NSXMLParserAttributeHasNoValueError = 41, | |
66 NSXMLParserAttributeRedefinedError = 42, | |
67 NSXMLParserLiteralNotStartedError = 43, | |
68 NSXMLParserLiteralNotFinishedError = 44, | |
69 NSXMLParserCommentNotFinishedError = 45, | |
70 NSXMLParserProcessingInstructionNotStartedError = 46, | |
71 NSXMLParserProcessingInstructionNotFinishedError = 47, | |
72 NSXMLParserNotationNotStartedError = 48, | |
73 NSXMLParserNotationNotFinishedError = 49, | |
74 NSXMLParserAttributeListNotStartedError = 50, | |
75 NSXMLParserAttributeListNotFinishedError = 51, | |
76 NSXMLParserMixedContentDeclNotStartedError = 52, | |
77 NSXMLParserMixedContentDeclNotFinishedError = 53, | |
78 NSXMLParserElementContentDeclNotStartedError = 54, | |
79 NSXMLParserElementContentDeclNotFinishedError = 55, | |
80 NSXMLParserXMLDeclNotStartedError = 56, | |
81 NSXMLParserXMLDeclNotFinishedError = 57, | |
82 NSXMLParserConditionalSectionNotStartedError = 58, | |
83 NSXMLParserConditionalSectionNotFinishedError = 59, | |
84 NSXMLParserExternalSubsetNotFinishedError = 60, | |
85 NSXMLParserDOCTYPEDeclNotFinishedError = 61, | |
86 NSXMLParserMisplacedCDATAEndStringError = 62, | |
87 NSXMLParserCDATANotFinishedError = 63, | |
88 NSXMLParserMisplacedXMLDeclarationError = 64, | |
89 NSXMLParserSpaceRequiredError = 65, | |
90 NSXMLParserSeparatorRequiredError = 66, | |
91 NSXMLParserNMTOKENRequiredError = 67, | |
92 NSXMLParserNAMERequiredError = 68, | |
93 NSXMLParserPCDATARequiredError = 69, | |
94 NSXMLParserURIRequiredError = 70, | |
95 NSXMLParserPublicIdentifierRequiredError = 71, | |
96 NSXMLParserLTRequiredError = 72, | |
97 NSXMLParserGTRequiredError = 73, | |
98 NSXMLParserLTSlashRequiredError = 74, | |
99 NSXMLParserEqualExpectedError = 75, | |
100 NSXMLParserTagNameMismatchError = 76, | |
101 NSXMLParserUnfinishedTagError = 77, | |
102 NSXMLParserStandaloneValueError = 78, | |
103 NSXMLParserInvalidEncodingNameError = 79, | |
104 NSXMLParserCommentContainsDoubleHyphenError = 80, | |
105 NSXMLParserInvalidEncodingError = 81, | |
106 NSXMLParserExternalStandaloneEntityError = 82, | |
107 NSXMLParserInvalidConditionalSectionError = 83, | |
108 NSXMLParserEntityValueRequiredError = 84, | |
109 NSXMLParserNotWellBalancedError = 85, | |
110 NSXMLParserExtraContentError = 86, | |
111 NSXMLParserInvalidCharacterInEntityError = 87, | |
112 NSXMLParserParsedEntityRefInInternalError = 88, | |
113 NSXMLParserEntityRefLoopError = 89, | |
114 NSXMLParserEntityBoundaryError = 90, | |
115 NSXMLParserInvalidURIError = 91, | |
116 NSXMLParserURIFragmentError = 92, | |
117 NSXMLParserNoDTDError = 94, | |
118 NSXMLParserDelegateAbortedParseError = 512 | |
119 } | |
120 | |
121 static this () | |
122 { | |
123 NSXMLParserErrorDomain = new NSString(bindings.NSXMLParserErrorDomain); | |
124 } | |
125 | |
126 class NSXMLParser : NSObject | |
127 { | |
128 mixin ObjcWrap; | |
129 mixin TNSXMLParserLocatorAdditions; | |
130 | |
131 Object initWithContentsOfURL (NSURL url) | |
132 { | |
133 return invokeObjcSelf!(Object, "initWithContentsOfURL:", NSURL)(url); | |
134 } | |
135 | |
136 this (NSURL url) | |
137 { | |
138 objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); | |
139 id result = Bridge.invokeObjcMethod!(id, "initWithContentsOfURL:", NSURL)(objcObject, url); | |
140 | |
141 if (result) | |
142 objcObject = ret; | |
143 | |
144 dObject = this; | |
145 } | |
146 | |
147 Object initWithData (NSData data) | |
148 { | |
149 return invokeObjcSelf!(Object, "initWithData:", NSData)(data); | |
150 } | |
151 | |
152 this (NSData data) | |
153 { | |
154 objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); | |
155 id result = Bridge.invokeObjcMethod!(id, "initWithData:", NSData)(objcObject, data); | |
156 | |
157 if (result) | |
158 objcObject = ret; | |
159 | |
160 dObject = this; | |
161 } | |
162 | |
163 Object delegate_ () | |
164 { | |
165 return invokeObjcSelf!(Object, "delegate"); | |
166 } | |
167 | |
168 void setDelegate (Object delegate_) | |
169 { | |
170 return invokeObjcSelf!(void, "setDelegate:", Object)(delegate_); | |
171 } | |
172 | |
173 void setShouldProcessNamespaces (bool shouldProcessNamespaces) | |
174 { | |
175 return invokeObjcSelf!(void, "setShouldProcessNamespaces:", bool)(shouldProcessNamespaces); | |
176 } | |
177 | |
178 void setShouldReportNamespacePrefixes (bool shouldReportNamespacePrefixes) | |
179 { | |
180 return invokeObjcSelf!(void, "setShouldReportNamespacePrefixes:", bool)(shouldReportNamespacePrefixes); | |
181 } | |
182 | |
183 void setShouldResolveExternalEntities (bool shouldResolveExternalEntities) | |
184 { | |
185 return invokeObjcSelf!(void, "setShouldResolveExternalEntities:", bool)(shouldResolveExternalEntities); | |
186 } | |
187 | |
188 bool shouldProcessNamespaces () | |
189 { | |
190 return invokeObjcSelf!(bool, "shouldProcessNamespaces"); | |
191 } | |
192 | |
193 bool shouldReportNamespacePrefixes () | |
194 { | |
195 return invokeObjcSelf!(bool, "shouldReportNamespacePrefixes"); | |
196 } | |
197 | |
198 bool shouldResolveExternalEntities () | |
199 { | |
200 return invokeObjcSelf!(bool, "shouldResolveExternalEntities"); | |
201 } | |
202 | |
203 bool parse () | |
204 { | |
205 return invokeObjcSelf!(bool, "parse"); | |
206 } | |
207 | |
208 void abortParsing () | |
209 { | |
210 return invokeObjcSelf!(void, "abortParsing"); | |
211 } | |
212 | |
213 NSError parserError () | |
214 { | |
215 return invokeObjcSelf!(NSError, "parserError"); | |
216 } | |
217 } | |
218 | |
219 template TNSXMLParserDelegateEventAdditions () | |
220 { | |
221 void parserDidStartDocument (NSXMLParser parser); | |
222 void parserDidEndDocument (NSXMLParser parser); | |
223 void parser (NSXMLParser parser, NSString name, NSString publicID, NSString systemID); | |
224 void parser (NSXMLParser parser, NSString name, NSString publicID, NSString systemID, NSString notationName); | |
225 void parser (NSXMLParser parser, NSString attributeName, NSString elementName, NSString type, NSString defaultValue); | |
226 void parser (NSXMLParser parser, NSString elementName, NSString model); | |
227 void parser (NSXMLParser parser, NSString name, NSString value); | |
228 void parser (NSXMLParser parser, NSString name, NSString publicID, NSString systemID); | |
229 void parser (NSXMLParser parser, NSString elementName, NSString namespaceURI, NSString qName, NSDictionary attributeDict); | |
230 void parser (NSXMLParser parser, NSString elementName, NSString namespaceURI, NSString qName); | |
231 void parser (NSXMLParser parser, NSString prefix, NSString namespaceURI); | |
232 void parser (NSXMLParser parser, NSString prefix); | |
233 void parser (NSXMLParser parser, NSString string); | |
234 void parser (NSXMLParser parser, NSString whitespaceString); | |
235 void parser (NSXMLParser parser, NSString target, NSString data); | |
236 void parser (NSXMLParser parser, NSString comment); | |
237 void parser (NSXMLParser parser, NSData CDATABlock); | |
238 NSData parser (NSXMLParser parser, NSString name, NSString systemID); | |
239 void parser (NSXMLParser parser, NSError parseError); | |
240 void parser (NSXMLParser parser, NSError validationError); | |
241 } | |
242 | |
243 template TNSXMLParserLocatorAdditions () | |
244 { | |
245 NSString publicID () | |
246 { | |
247 return invokeObjcSelf!(NSString, "publicID"); | |
248 } | |
249 | |
250 NSString systemID () | |
251 { | |
252 return invokeObjcSelf!(NSString, "systemID"); | |
253 } | |
254 | |
255 NSInteger lineNumber () | |
256 { | |
257 return invokeObjcSelf!(NSInteger, "lineNumber"); | |
258 } | |
259 | |
260 NSInteger columnNumber () | |
261 { | |
262 return invokeObjcSelf!(NSInteger, "columnNumber"); | |
263 } | |
264 } | |
265 |