ObjFW
Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Properties
OFXMLParser Class Reference

An event-based XML parser. More...

#include <OFXMLParser.h>

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

List of all members.

Public Member Functions

id< OFXMLParserDelegatedelegate ()
void setDelegate: (id< OFXMLParserDelegate > delegate)
of_xml_parser_processing_instructions_block_t processingInstructionsHandler ()
void setProcessingInstructionsHandler: (of_xml_parser_processing_instructions_block_t block)
of_xml_parser_element_start_block_t elementStartHandler ()
void setElementStartHandler: (of_xml_parser_element_start_block_t block)
of_xml_parser_element_end_block_t elementEndHandler ()
void setElementEndHandler: (of_xml_parser_element_end_block_t block)
of_xml_parser_string_block_t charactersHandler ()
void setCharactersHandler: (of_xml_parser_string_block_t block)
of_xml_parser_string_block_t CDATAHandler ()
void setCDATAHandler: (of_xml_parser_string_block_t block)
of_xml_parser_string_block_t commentHandler ()
void setCommentHandler: (of_xml_parser_string_block_t block)
of_xml_parser_unknown_entity_block_t unknownEntityHandler ()
void setUnknownEntityHandler: (of_xml_parser_unknown_entity_block_t block)
void parseBuffer:withSize: (const char *buf,[withSize] size_t size)
void parseString: (OFString *str)
void parseStream: (OFStream *stream)
void parseFile: (OFString *path)
size_t lineNumber ()
BOOL finishedParsing ()

Static Public Member Functions

id parser ()

Protected Types

enum  {
  OF_XMLPARSER_OUTSIDE_TAG, OF_XMLPARSER_TAG_OPENED, OF_XMLPARSER_IN_PROCESSING_INSTRUCTIONS, OF_XMLPARSER_IN_TAG_NAME,
  OF_XMLPARSER_IN_CLOSE_TAG_NAME, OF_XMLPARSER_IN_TAG, OF_XMLPARSER_IN_ATTR_NAME, OF_XMLPARSER_EXPECT_DELIM,
  OF_XMLPARSER_IN_ATTR_VALUE, OF_XMLPARSER_EXPECT_CLOSE, OF_XMLPARSER_EXPECT_SPACE_OR_CLOSE, OF_XMLPARSER_IN_EXCLAMATIONMARK,
  OF_XMLPARSER_IN_CDATA_OPENING, OF_XMLPARSER_IN_CDATA_1, OF_XMLPARSER_IN_CDATA_2, OF_XMLPARSER_IN_COMMENT_OPENING,
  OF_XMLPARSER_IN_COMMENT_1, OF_XMLPARSER_IN_COMMENT_2, OF_XMLPARSER_IN_DOCTYPE, OF_XMLPARSER_NUM_STATES
}

Protected Attributes

enum OFXMLParser:: { ... }  state
OFMutableStringcache
OFStringname
OFStringprefix
OFMutableArraynamespaces
OFMutableArrayattrs
OFStringattrName
OFStringattrPrefix
char delim
OFMutableArrayprevious
size_t level
BOOL acceptProlog
size_t lineNumber
BOOL lastCarriageReturn
BOOL finishedParsing

Properties

id< OFXMLParserDelegatedelegate
of_xml_parser_processing_instructions_block_t processingInstructionsHandler
of_xml_parser_element_start_block_t elementStartHandler
of_xml_parser_element_end_block_t elementEndHandler
of_xml_parser_string_block_t charactersHandler
of_xml_parser_string_block_t CDATAHandler
of_xml_parser_string_block_t commentHandler
of_xml_parser_unknown_entity_block_t unknownEntityHandler

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.


Member Function Documentation

of_xml_parser_string_block_t OFXMLParser::CDATAHandler ( ) [virtual]
Returns:
The CDATA handler
of_xml_parser_string_block_t OFXMLParser::charactersHandler ( ) [virtual]
Returns:
The characters handler
of_xml_parser_string_block_t OFXMLParser::commentHandler ( ) [virtual]
Returns:
The comment handler
id <OFXMLParserDelegate> OFXMLParser::delegate ( ) [virtual]
Returns:
The delegate that is used by the XML parser
of_xml_parser_element_end_block_t OFXMLParser::elementEndHandler ( ) [virtual]
Returns:
The element end handler
of_xml_parser_element_start_block_t OFXMLParser::elementStartHandler ( ) [virtual]
Returns:
The element start handler
BOOL OFXMLParser::finishedParsing ( ) [virtual]
Returns:
Whether the XML parser has finished parsing
size_t OFXMLParser::lineNumber ( ) [virtual]
Returns:
The current line number
void OFXMLParser::parseBuffer:withSize: ( const char*  buf,
[withSize] size_t  size 
) [virtual]

Parses a buffer with the specified size.

Parameters:
bufThe buffer to parse
sizeThe size of the buffer
void OFXMLParser::parseFile: ( OFString path) [virtual]

Parses the specified file.

Parameters:
pathThe path to the file to parse
id OFXMLParser::parser ( ) [static, virtual]
Returns:
A new, autoreleased OFXMLParser
void OFXMLParser::parseStream: ( OFStream stream) [virtual]

Parses the specified stream.

Parameters:
streamThe stream to parse
void OFXMLParser::parseString: ( OFString str) [virtual]

Parses the specified string.

Parameters:
strThe string to parse
of_xml_parser_processing_instructions_block_t OFXMLParser::processingInstructionsHandler ( ) [virtual]
Returns:
The processing instructions handler
void OFXMLParser::setCDATAHandler: ( of_xml_parser_string_block_t  block) [virtual]

Sets the CDATA handler.

Parameters:
blockA CDATA handler
void OFXMLParser::setCharactersHandler: ( of_xml_parser_string_block_t  block) [virtual]

Sets the characters handler.

Parameters:
blockA characters handler
void OFXMLParser::setCommentHandler: ( of_xml_parser_string_block_t  block) [virtual]

Sets the comment handler.

Parameters:
blockA comment handler
void OFXMLParser::setDelegate: ( id <OFXMLParserDelegate delegate) [virtual]

Sets the delegate the OFXMLParser should use.

Parameters:
delegateThe delegate to use
void OFXMLParser::setElementEndHandler: ( of_xml_parser_element_end_block_t  block) [virtual]

Sets the element end handler.

Parameters:
blockAn element end handler
void OFXMLParser::setElementStartHandler: ( of_xml_parser_element_start_block_t  block) [virtual]

Sets the element start handler.

Parameters:
blockAn element start handler
void OFXMLParser::setProcessingInstructionsHandler: ( of_xml_parser_processing_instructions_block_t  block) [virtual]

Sets the processing instructions handler.

Parameters:
blockA processing instructions handler
void OFXMLParser::setUnknownEntityHandler: ( of_xml_parser_unknown_entity_block_t  block) [virtual]

Sets the unknown entity handler.

Parameters:
blockAn unknown entity handler
of_xml_parser_unknown_entity_block_t OFXMLParser::unknownEntityHandler ( ) [virtual]
Returns:
The unknown entity handler

The documentation for this class was generated from the following files:
 All Classes Functions Variables