ObjFW
Instance Methods | Class Methods | List of all members
OFXMLParser Class Reference

An event-based XML parser. More...

#import <ObjFW/OFXMLParser.h>

Inheritance diagram for OFXMLParser:
OFObject <OFStringXMLUnescapingDelegate> <OFObject> <OFObject>

Instance Methods

(void) - setDelegate:
 Sets the delegate the XML parser should use. More...
 
(nullable id< OFXMLParserDelegate >) - delegate
 Returns the delegate that is used by the XML parser. More...
 
(size_t) - depthLimit
 Returns the depth limit for the XML parser. More...
 
(void) - setDepthLimit:
 Sets the depth limit for the XML parser. More...
 
(void) - parseBuffer:length:
 Parses the specified buffer with the specified size. More...
 
(void) - parseString:
 Parses the specified string. More...
 
(void) - parseStream:
 Parses the specified stream. More...
 
(void) - parseFile:
 Parses the specified file. More...
 
(size_t) - lineNumber
 Returns the current line number. More...
 
(bool) - finishedParsing
 Returns whether the XML parser has finished parsing. More...
 
- Instance Methods inherited from OFObject
(id) - init
 Initializes an already allocated object. More...
 
(OFString *) - className
 Returns the name of the object's class. More...
 
(OFString *) - description
 Returns a description for the object. More...
 
(void *) - allocMemoryWithSize:
 Allocates memory and stores it in the object's memory pool. More...
 
(void *) - allocMemoryWithSize:count:
 Allocates memory for the specified number of items and stores it in the object's memory pool. More...
 
(nullable void *) - resizeMemory:size:
 Resizes memory in the object's memory pool to the specified size. More...
 
(nullable void *) - resizeMemory:size:count:
 Resizes memory in the object's memory pool to the specific number of items of the specified size. More...
 
(void) - freeMemory:
 Frees allocated memory and removes it from the object's memory pool. More...
 
(void) - dealloc
 Deallocates the object. More...
 
(void) - performSelector:afterDelay:
 Performs the specified selector after the specified delay. More...
 
(void) - performSelector:withObject:afterDelay:
 Performs the specified selector with the specified object after the specified delay. More...
 
(void) - performSelector:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:waitUntilDone:
 Performs the specified selector on the specified thread. More...
 
(void) - performSelector:onThread:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified object. More...
 
(void) - performSelector:onThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:waitUntilDone:
 Performs the specified selector on the main thread. More...
 
(void) - performSelectorOnMainThread:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified object. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelector:onThread:afterDelay:
 Performs the specified selector on the specified thread after the specified delay. More...
 
(void) - performSelector:onThread:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified object after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(nullable id) - forwardingTargetForSelector:
 This method is called when resolveClassMethod: or resolveInstanceMethod: returned false. It should return a target to which the message should be forwarded. More...
 
(void) - doesNotRecognizeSelector:
 Handles messages which are not understood by the receiver. More...
 
(OFString *) - stringBySerializing
 Creates a string by serializing the receiver. More...
 
- Instance Methods inherited from <OFObject>
(bool) - isKindOfClass:
 Returns a boolean whether the object of the specified kind. More...
 
(bool) - isMemberOfClass:
 Returns a boolean whether the object is a member of the specified class. More...
 
(bool) - respondsToSelector:
 Returns a boolean whether the object responds to the specified selector. More...
 
(nullable IMP) - methodForSelector:
 Returns the implementation for the specified selector. More...
 
(nullable const char *) - typeEncodingForSelector:
 Returns the type encoding for the specified selector. More...
 
(nullable id) - performSelector:
 Performs the specified selector. More...
 
(nullable id) - performSelector:withObject:
 Performs the specified selector with the specified object. More...
 
(nullable id) - performSelector:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(bool) - isEqual:
 Checks two objects for equality. More...
 
(uint32_t) - hash
 Calculates a hash for the object. More...
 
(id) - retain
 Increases the retain count. More...
 
(unsigned int) - retainCount
 Returns the retain count. More...
 
(void) - release
 Decreases the retain count. More...
 
(id) - autorelease
 Adds the object to the topmost OFAutoreleasePool of the thread's autorelease pool stack. More...
 
(id) - self
 Returns the receiver. More...
 
(bool) - isProxy
 Returns whether the object is a proxy object. More...
 
- Instance Methods inherited from <OFStringXMLUnescapingDelegate>
(OFString *) - string:containsUnknownEntityNamed:
 This callback is called when an unknown entity was found while trying to unescape XML. More...
 

Class Methods

(instancetype) + parser
 Creates a new XML parser. More...
 
- Class Methods inherited from OFObject
(void) + load
 A method which is called once when the class is loaded into the runtime. More...
 
(void) + unload
 A method which is called when the class is unloaded from the runtime. More...
 
(void) + initialize
 A method which is called the moment before the first call to the class is being made. More...
 
(id) + alloc
 Allocates memory for an instance of the class and sets up the memory pool for the object. More...
 
(id) + new
 Allocates memory for a new instance and calls init on it. More...
 
(Class) + class
 Returns the class. More...
 
(OFString *) + className
 Returns the name of the class as a string. More...
 
(bool) + isSubclassOfClass:
 Returns a boolean whether the class is a subclass of the specified class. More...
 
(Class) + superclass
 Returns the superclass of the class. More...
 
(bool) + instancesRespondToSelector:
 Checks whether instances of the class respond to a given selector. More...
 
(bool) + conformsToProtocol:
 Checks whether the class conforms to a given protocol. More...
 
(nullable IMP) + instanceMethodForSelector:
 Returns the implementation of the instance method for the specified selector. More...
 
(nullable const char *) + typeEncodingForInstanceSelector:
 Returns the type encoding of the instance method for the specified selector. More...
 
(OFString *) + description
 Returns a description for the class, which is usually the class name. More...
 
(nullable IMP) + replaceClassMethod:withMethodFromClass:
 Replaces a class method with a class method from another class. More...
 
(nullable IMP) + replaceInstanceMethod:withMethodFromClass:
 Replaces an instance method with an instance method from another class. More...
 
(nullable IMP) + replaceClassMethod:withImplementation:typeEncoding:
 Replaces or adds a class method. More...
 
(nullable IMP) + replaceInstanceMethod:withImplementation:typeEncoding:
 Replaces or adds an instance method. More...
 
(void) + inheritMethodsFromClass:
 Adds all methods from the specified class to the class that is the receiver. More...
 
(bool) + resolveClassMethod:
 Try to resolve the specified class method. More...
 
(bool) + resolveInstanceMethod:
 Try to resolve the specified instance method. More...
 
(id) + copy
 Returns the class. More...
 

Detailed Description

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.

Method Documentation

- (id< OFXMLParserDelegate >) delegate

Returns the delegate that is used by the XML parser.

Returns
The delegate that is used by the XML parser
- (size_t) depthLimit

Returns the depth limit for the XML parser.

Returns
The depth limit for the XML parser
- (bool) finishedParsing

Returns whether the XML parser has finished parsing.

Returns
Whether the XML parser has finished parsing
- (size_t) lineNumber

Returns the current line number.

Returns
The current line number
- (void) parseBuffer: (const char*)  buffer
length: (size_t)  length 

Parses the specified buffer with the specified size.

Parameters
bufferThe buffer to parse
lengthThe length of the buffer
- (void) parseFile: (OFString*)  path

Parses the specified file.

Parameters
pathThe path to the file to parse
+ (instancetype) parser

Creates a new XML parser.

Returns
A new, autoreleased OFXMLParser
- (void) parseStream: (OFStream*)  stream

Parses the specified stream.

Parameters
streamThe stream to parse
- (void) parseString: (OFString*)  string

Parses the specified string.

Parameters
stringThe string to parse
- (void) setDelegate: (nullable id< OFXMLParserDelegate >)  delegate

Sets the delegate the XML parser should use.

Parameters
delegateThe delegate to use
- (void) setDepthLimit: (size_t)  depthLimit

Sets the depth limit for the XML parser.

If the depth limit is exceeded, an OFMalformedXMLException is thrown.

The default is 32. 0 means unlimited (insecure!).

Parameters
depthLimitThe depth limit for the XML parser

The documentation for this class was generated from the following files: