[#BloombergLP-balxml-ListParser]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balxml.adoc[balxml]::ListParser
:relfileprefix: ../../
:mrdocs:

This is a push parser for lists&period;

== Synopsis

Declared in `&lt;balxml&lowbar;listparser&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
class ListParser;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balxml/ListParser/ParseElementCallback.adoc[`ParseElementCallback`] 
| Callable type for parsing a single list element&period;
| xref:BloombergLP/balxml/ListParser/ParseElementFunction.adoc[`ParseElementFunction`] 
| Function&hyphen;pointer type for parsing a single list element&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balxml/ListParser/2constructor.adoc[`ListParser`]         [.small]#[constructor]#
| Create a parser for lists using the specified `parseElementCallback` functor to parse each element and the optionally specified `basicAllocator` for supplying memory&period; If `basicAllocator` is 0, the currently installed default allocator will be used&period;
| xref:BloombergLP/balxml/ListParser/beginParse.adoc[`beginParse`] 
| Prepare the parser to start parsing a new value and associate the specified `object` with the parser&period; Return 0 if successful and non&hyphen;zero otherwise&period;
| xref:BloombergLP/balxml/ListParser/endParse.adoc[`endParse`] 
| Ends the parse operation and store the value parsed from the pushed characters into the associated object&period; Return 0 if successful and non&hyphen;zero otherwise&period; The behavior is undefined unless an object is associated with this parser&period; Upon successful completion, the parser will be disassociated with the object&period;
| xref:BloombergLP/balxml/ListParser/pushCharacters.adoc[`pushCharacters`] 
| Push the characters ranging from the specified `begin` up to (but not including) the specified `end` into this parser&period; Return 0 if successful and non&hyphen;zero otherwise&period; The parameterized `INPUT&lowbar;ITERATOR` must be dereferenceable to a `char` value&period; The behavior is undefined unless an object is associated with this parser&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
