15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
extern int _OFXMLParser_reference;
@class OFXMLParser;
@class OFArray;
@class OFMutableArray;
/**
* A protocol that needs to be implemented by delegates for OFXMLParser.
*/
@protocol OFXMLParserDelegate
/**
* This callback is called when the XML parser found the start of a new tag.
*
* \param parser The parser which found a new tag
* \param name The name of the tag which just started
|
|
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
extern int _OFXMLParser_reference;
@class OFXMLParser;
@class OFArray;
@class OFMutableArray;
/**
* \brief A protocol that needs to be implemented by delegates for OFXMLParser.
*/
@protocol OFXMLParserDelegate
/**
* This callback is called when the XML parser found the start of a new tag.
*
* \param parser The parser which found a new tag
* \param name The name of the tag which just started
|
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
* \return A substitution for the entity or nil
*/
- (OFString*)xmlParser: (OFXMLParser*)parser
foundUnknownEntityNamed: (OFString*)entity;
@end
/**
* A protocol that needs to be implemented by delegates for
* stringByXMLUnescapingWithHandler:.
*/
@protocol OFXMLUnescapingDelegate
/**
* This callback is called when an unknown entity was found while trying to
* unescape XML. The callback is supposed to return a substitution for the
* entity or nil if it is unknown to the callback as well, in which case an
* exception will be thrown.
*
* \param entity The name of the entity that is unknown
* \return A substitution for the entity or nil
*/
- (OFString*)foundUnknownEntityNamed: (OFString*)entity;
@end
/**
* An event-based XML parser which calls the delegate's callbacks as soon as
* it finds something, thus suitable for streams as well.
*/
@interface OFXMLParser: OFObject <OFXMLUnescapingDelegate>
{
OFObject <OFXMLParserDelegate> *delegate;
enum {
OF_XMLPARSER_OUTSIDE_TAG,
OF_XMLPARSER_TAG_OPENED,
|
|
|
>
>
|
|
|
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
* \return A substitution for the entity or nil
*/
- (OFString*)xmlParser: (OFXMLParser*)parser
foundUnknownEntityNamed: (OFString*)entity;
@end
/**
* \brief A protocol that needs to be implemented by delegates for
* stringByXMLUnescapingWithHandler:.
*/
@protocol OFXMLUnescapingDelegate
/**
* This callback is called when an unknown entity was found while trying to
* unescape XML. The callback is supposed to return a substitution for the
* entity or nil if it is unknown to the callback as well, in which case an
* exception will be thrown.
*
* \param entity The name of the entity that is unknown
* \return A substitution for the entity or nil
*/
- (OFString*)foundUnknownEntityNamed: (OFString*)entity;
@end
/**
* \brief An event-based XML parser.
*
* OFXMLParser is an event-based XML parser which calls the delegate's callbacks
* as soon asit finds something, thus suitable for streams as well.
*/
@interface OFXMLParser: OFObject <OFXMLUnescapingDelegate>
{
OFObject <OFXMLParserDelegate> *delegate;
enum {
OF_XMLPARSER_OUTSIDE_TAG,
OF_XMLPARSER_TAG_OPENED,
|
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
|
* \param size The size of the buffer
*/
- parseBuffer: (const char*)buf
withSize: (size_t)size;
@end
/**
* The OFString (OFXMLUnescaping) category provides methods to unescape XML in
* strings.
*/
@interface OFString (OFXMLUnescaping)
/**
* Unescapes XML in the string.
*/
- stringByXMLUnescaping;
|
|
<
|
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
|
* \param size The size of the buffer
*/
- parseBuffer: (const char*)buf
withSize: (size_t)size;
@end
/**
* \brief A category for unescaping XML in strings.
*/
@interface OFString (OFXMLUnescaping)
/**
* Unescapes XML in the string.
*/
- stringByXMLUnescaping;
|