xml_parser.hpp
Go to the documentation of this file.
7 /*************************************************************************************************/
12 /*************************************************************************************************/
42 /*************************************************************************************************/
46 /*************************************************************************************************/
176 adobe::set_union(*set_m, *other_set.set_m, std::back_inserter(merged.set_m.write()), less_key_only_t());
305 /*************************************************************************************************/
324 /*************************************************************************************************/
362 /*************************************************************************************************/
364 inline std::size_t attribute_set_t::count_same(const attribute_set_t& other_set, bool mapped_matters) const
389 /*************************************************************************************************/
407 /*************************************************************************************************/
426 /*************************************************************************************************/
438 /*************************************************************************************************/
588 /* REVISIT (sparent) : Should these be const? And is there a way to specify the class to throw? */
620 /*************************************************************************************************/
628 /*************************************************************************************************/
636 /*************************************************************************************************/
651 #elif ADOBE_PLATFORM_UNIX || ADOBE_PLATFORM_LINUX || ADOBE_PLATFORM_BSD || ADOBE_PLATFORM_SOLARIS ||\
655 #error "Line ending for platform unknown - please configure and report the results to stlab.adobe.com"
662 /*************************************************************************************************/
666 /*************************************************************************************************/
670 /*************************************************************************************************/
674 /*************************************************************************************************/
693 /*************************************************************************************************/
708 /*************************************************************************************************/
721 /*************************************************************************************************/
732 /*************************************************************************************************/
785 /*************************************************************************************************/
905 /*************************************************************************************************/
1016 /*************************************************************************************************/
1030 /*************************************************************************************************/
1044 /*************************************************************************************************/
1068 /*************************************************************************************************/
1111 /*************************************************************************************************/
1127 /*************************************************************************************************/
1144 /*************************************************************************************************/
1159 /*************************************************************************************************/
1187 /*************************************************************************************************/
1200 /*************************************************************************************************/
1230 /*************************************************************************************************/
1264 /*************************************************************************************************/
1287 /*************************************************************************************************/
1291 /*************************************************************************************************/
1295 /*************************************************************************************************/
Definition: functional.hpp:213 bool is_token(xml_lex_token_set_t name, token_range_t &value) Definition: xml_parser.hpp:677 bool is_e_tag(token_range_t &name, token_range_t &close_tag) Definition: xml_parser.hpp:1019 bool token_range_less(const token_range_t &x, const token_range_t &y) Definition: lex_shared_fwd.hpp:194 Definition: arg_stream.hpp:53 friend std::ostream & operator<<(std::ostream &s, const attribute_set_t &attribute_set) bool equal(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, BinaryPredicate pred) Definition: equal.hpp:38 OutputIterator set_intersection(const InputRange1 &range1, const InputRange2 &range2, OutputIterator result) set implementation Definition: set.hpp:121 InputIterator xatoi(InputIterator first, InputIterator last, Result &result) Definition: xml_parser.hpp:1237 token_range_t xml_element_linefeed(const token_range_t &, const token_range_t &name, const attribute_set_t &attribute_set, const token_range_t &value) Definition: xml_parser.hpp:638 void callback(std::ios_base::event ev, std::ios_base &strm, int idx) Definition: iomanip.hpp:315 token_range_t( implementation_xml_element_proc_t)(const token_range_t &entire_element_range, const token_range_t &name, const attribute_set_t &attribute_set, const token_range_t &value) Definition: xml_parser.hpp:430 bool lower_bound(const value_type &attribute, set_type::const_iterator &result) const Definition: xml_parser.hpp:124 friend bool operator==(const attribute_set_t &x, const attribute_set_t &y) token_range_t static_token_range(T *begin) Definition: lex_shared_fwd.hpp:245 std::size_t count_collisions(const attribute_set_t &other_set) const Definition: xml_parser.hpp:409 std::pair< uchar_ptr_t, uchar_ptr_t > token_range_t A range of pointers denoting a token within a character stream. Definition: lex_shared_fwd.hpp:145 xml_parser_t & operator=(const xml_parser_t &rhs) Definition: xml_parser.hpp:470 bool operator()(const value_type &x, const value_type &y) const Definition: xml_parser.hpp:82 xml_parser_t(uchar_ptr_t first, uchar_ptr_t last, const line_position_t &position, preorder_predicate_t predicate, callback_proc_t callback, O output) Definition: xml_parser.hpp:449 bool operator==(const circular_queue< T > &x, const circular_queue< T > &y) Definition: circular_queue.hpp:421 std::pair< key_type, mapped_type > value_type Definition: xml_parser.hpp:53 Definition: xml_parser.hpp:65 bool token_range_equal(const token_range_t &x, const token_range_t &y) Definition: lex_shared_fwd.hpp:164 OutputIterator copy(const InputRange &range, OutputIterator result) copy implementation Definition: copy.hpp:43 bool is_element(token_range_t &element) Definition: xml_parser.hpp:788 void insert(const value_type &attribute) Definition: xml_parser.hpp:192 token_range_t xml_element_echo(const token_range_t &entire_element_range, const token_range_t &, const attribute_set_t &, const token_range_t &) Definition: xml_parser.hpp:622 token_range_t xml_element_strip(const token_range_t &, const token_range_t &, const attribute_set_t &, const token_range_t &value) Definition: xml_parser.hpp:630 bool has_collisions(const attribute_set_t &other_set) const Definition: xml_parser.hpp:391 void throw_exception(const char *error_string) Definition: xml_parser.hpp:590 void insert(const key_type &key, const mapped_type &value) Definition: xml_parser.hpp:224 Definition: functional.hpp:26 A relatively lightweight and simple xml (subset) parser. Definition: xml_parser.hpp:442 bool is_attribute_set(attribute_set_t &attribute_set) Definition: xml_parser.hpp:1033 Definition: iterator.hpp:50 mapped_type operator[](const key_type &key) const Definition: xml_parser.hpp:147 OutputIterator set_union(const InputRange1 &range1, const InputRange2 &range2, OutputIterator result) set implementation Definition: set.hpp:82 const line_position_t & next_position() Definition: xml_parser.hpp:484 void set_preorder_predicate(preorder_predicate_t pred) Definition: xml_parser.hpp:492 bool lower_bound(const key_type &key, set_type::iterator &result) Definition: xml_parser.hpp:118 set_type::const_iterator const_iterator Definition: xml_parser.hpp:56 std::size_t count_same(const attribute_set_t &other_set, bool mapped_matters=true) const Definition: xml_parser.hpp:364 attribute_set_t merge(const attribute_set_t &other_set) const Definition: xml_parser.hpp:171 void throw_exception(xml_lex_token_set_t found, xml_lex_token_set_t expected) Definition: xml_parser.hpp:592 xml_parser_t(const xml_parser_t &rhs) Definition: xml_parser.hpp:462 void content_callback(token_range_t &result_element, const token_range_t &old_element, const token_range_t &start_tag, const attribute_set_t attribute_set, const token_range_t &content, bool preorder_parent) Definition: xml_parser.hpp:735 boost::function< implementation_xml_element_proc_t > xml_element_proc_t Definition: xml_parser.hpp:436 void parse_element_sequence() Definition: xml_parser.hpp:1147 bool operator()(const value_type &x, const value_type &y) const Definition: xml_parser.hpp:67 bool lower_bound(const key_type &key, set_type::const_iterator &result) const Definition: xml_parser.hpp:135 InputIterator datoi(InputIterator first, InputIterator last, Result &result) Definition: xml_parser.hpp:1271 bool is_content(token_range_t &element) Definition: xml_parser.hpp:908 bool lower_bound(const value_type &attribute, set_type::iterator &result) Definition: xml_parser.hpp:99 xml_parser_t< O > make_xml_parser(uchar_ptr_t first, uchar_ptr_t last, const line_position_t &position, typename xml_parser_t< O >::preorder_predicate_t predicate, typename xml_parser_t< O >::callback_proc_t callback, O output) Create an object that will parse the indicated content range using the preorder and content functions... Definition: xml_parser.hpp:1222 void require_token(xml_lex_token_set_t name, token_range_t &value) Definition: xml_parser.hpp:711 boost::function< bool(const token_range_t &)> preorder_predicate_t Definition: xml_parser.hpp:446 boost::range_size< Selection >::type size(const Selection &x) Definition: selection_algorithms.hpp:457 bool is_attribute(token_range_t &name, token_range_t &value) Definition: xml_parser.hpp:1130 std::ostream & operator<<(std::ostream &s, const extents_t &x) xml_element_proc_t callback_proc_t Definition: xml_parser.hpp:445 bool is_xml_decl(token_range_t &xml_decl) Definition: xml_parser.hpp:1114 An associated array based on adobe::token_range_t. A utility class for the xml_parser_t. Definition: xml_parser.hpp:49 |