Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-01-12 | Preserve order semantics for child_value/text when using parse_embed_pcdata | Arseny Kapoulkine | |
The performance cost is probably negligible and this means we treat embedded value as the first child consistently. | |||
2016-01-12 | docs: Add parse_embed_pcdata documentation | Arseny Kapoulkine | |
2016-01-12 | Adjust parse_embed_pcdata documentation | Arseny Kapoulkine | |
Since round-tripping should not be a problem any more don't mention it. | |||
2016-01-12 | tests: Add test for parse_embed_pcdata | Arseny Kapoulkine | |
2016-01-12 | Only save first PCDATA contents in the element | Arseny Kapoulkine | |
This change fixes an important ordering issue - if element node has a PCDATA child *after* other elements, it's impossible to tell which order the children were in. Since the goal of PCDATA embedding is to save memory when it's the only child, only apply the optimization to the first child. This seems to fix all roundtripping issues so the only caveat is that the DOM structure is different. | |||
2016-01-09 | Implement output support for embedded PCDATA values | Arseny Kapoulkine | |
This is a bit awkward since preserving correct indentation structure requires a bit of extra work, and the closing tag has to be written by _start function to correctly process the rest of the tree. | |||
2016-01-08 | Support XPath string value for parse_embed_pcdata | Arseny Kapoulkine | |
2016-01-08 | Support xml_node::child_value/text for parse_embed_pcdata | Arseny Kapoulkine | |
2016-01-08 | Add initial support for parse_embed_pcdata | Arseny Kapoulkine | |
When this flag is true, PCDATA value is saved to the parent element instead of allocating a new node. This prevents some documents from round-tripping since it loses information, but can provide a significant memory reduction and parsing speedup for some documents. | |||
2015-12-31 | docs: Regenerate HTML documentation | Arseny Kapoulkine | |
2015-12-31 | Update all license/copyright texts to 2016 | Arseny Kapoulkine | |
2015-12-31 | docs: Use ISO-8601 for changelog dates | Arseny Kapoulkine | |
2015-12-30 | scripts: Fix default value for STATIC_CRT option | Arseny Kapoulkine | |
Also refactor to use the same case and run after common options. | |||
2015-12-30 | Merge pull request #70 from nirbar/master | Arseny Kapoulkine | |
scripts: Allow linking static CRT libraries on Windows Use the solution from CMake FAQ to specify correct command-line arguments. | |||
2015-12-29 | Work around Clang Wstring-conversion warnings | Arseny Kapoulkine | |
(!"string") triggers the warning however (false && "string") does not. Fixes #75. | |||
2015-12-03 | Merge branch 'master' of github.com:nirbar/pugixml | nir.bar | |
2015-12-03 | Add CMake option on MSVC- STATIC_CRT | nir.bar | |
2015-11-13 | Work around MinGW versions with non-C99 compliant headers | Arseny Kapoulkine | |
Apparently some MinGW distributions have a compiler that's recent enough to support C++11 but limits.h header that incorrectly omits LLONG limits in strict ANSI mode, since it guards the definitions with: #if !defined(__STRICT_ANSI__) && defined(__GNUC__) We can just define these symbols ourselves in this specific case. Fixes #66. | |||
2015-10-25 | tests: Fix Borland C++ 5.4 compilation | Arseny Kapoulkine | |
The tests now compile fine but crash on the first floating-point exception despite our attempts to disable them in main()... | |||
2015-10-25 | Fix Borland C++ 5.4 compilation | Arseny Kapoulkine | |
It does not have stdint.h and has some C++ parsing issues. | |||
2015-10-24 | Reduce Travis build matrix | Arseny Kapoulkine | |
2015-10-23 | Build NuGet package on AppVeyor | Arseny Kapoulkine | |
2015-10-19 | docs: Fix CDATA example | Arseny Kapoulkine | |
Fixes #61. | |||
2015-10-19 | docs: Add iOS to the list of supported platforms | Arseny Kapoulkine | |
2015-10-18 | docs: Update packaging info | Arseny Kapoulkine | |
2015-10-18 | docs: Update release datev1.7 | Arseny Kapoulkine | |
2015-10-18 | docs: Rewrite Portability section | Arseny Kapoulkine | |
2015-10-18 | Add config=analyze | Arseny Kapoulkine | |
2015-10-18 | Add release build to Travis | Arseny Kapoulkine | |
2015-10-18 | Fix wchar mode | Arseny Kapoulkine | |
2015-10-18 | Fix MWCW issue with compact mode | Arseny Kapoulkine | |
2015-10-18 | Fix Borland C++ issues with compact mode | Arseny Kapoulkine | |
2015-10-18 | Work around DMC compilation error | Arseny Kapoulkine | |
For some reason reference to a fixed-size array works in two other places but not in this one... | |||
2015-10-18 | Fix 'cast increases required alignment of type' warnings | Arseny Kapoulkine | |
These show up when building with Wcast-align for ARM. | |||
2015-10-17 | Use -pedantic instead of -Wpedantic | Arseny Kapoulkine | |
Travis CI strikes once more. | |||
2015-10-17 | Enable a few more warnings | Arseny Kapoulkine | |
2015-10-17 | Fix XPath query move ctor/operator | Arseny Kapoulkine | |
It now also moves parse result. | |||
2015-10-17 | Fix 'signed/unsigned comparison' warning in wchar mode | Arseny Kapoulkine | |
Only happens on GCC 3.4 for some reason. | |||
2015-10-17 | tests: Fix GCC warning | Arseny Kapoulkine | |
Fix "this decimal constant is unsigned only in ISO C90". | |||
2015-10-17 | Fix -Wshadow warning | Arseny Kapoulkine | |
2015-10-17 | Fix MSVC6 header-only build | Arseny Kapoulkine | |
name_sentry dtor results in multiple symbol definition errors in MSVC6. | |||
2015-10-17 | Fix integer overflow detection with leading zeros | Arseny Kapoulkine | |
Since they don't contribute to the resulting value just skip them before parsing. This matches the behavior of strtol/strtoll and results in more intuitive behavior. | |||
2015-10-17 | Use explicit tests in set_Name/set_value | Arseny Kapoulkine | |
Node type enum is not used as an array index anywhere else; the code is not very readable and the value of this "optimization" is questionable. The conditions are arranged so that in all normal cases the first comparison returns true anyway. | |||
2015-10-17 | Fix argument mismatch in integer parsing | Arseny Kapoulkine | |
The minneg argument is supposed to be the absolute value of the minimum negative representable number. In case of two-complement arithmetic, it's the same as the value itself but it's better to be explicit and negate the argument. | |||
2015-10-17 | Add compact_hash_table assertions | Arseny Kapoulkine | |
2015-10-17 | docs: Add a note about moving xpath_query | Arseny Kapoulkine | |
2015-10-12 | Refactor output buffer encoding | Arseny Kapoulkine | |
Share the implementation for different encodings. We still need two functions because endian_swap on uint8_t is ambiguous... | |||
2015-10-10 | docs: Regenerate HTML documentation | Arseny Kapoulkine | |
2015-10-10 | scripts: Use changelog URL as release notes | Arseny Kapoulkine | |
2015-10-10 | docs: Correct the acknowledgment section | Arseny Kapoulkine | |