Skip to content
Snippets Groups Projects
  1. Jan 01, 2019
  2. Nov 12, 2018
  3. Oct 16, 2018
    • Lipsa, Dan's avatar
      Remove warning in Visual Studio (#235) · 273fa0ab
      Lipsa, Dan authored
      The following warning is removed:
      Visual Studio 14.0
      1. warning C4275: non dll-interface class 'std::exception' used as
         base for dll-interface class 'vtkpugixml::xpath_exception'
      273fa0ab
  4. Sep 25, 2018
    • Arseny Kapoulkine's avatar
      XPath: Refactor xpath_node_set short buffer optimization · e3b5e9ce
      Arseny Kapoulkine authored
      This change replaces xpath_node_set single element storage with a
      single-element array in hopes that this would silence Coverity false
      positive about getting a singleton pointer.
      
      Additionally, it refactors _assign member to unify small and large
      buffer codepaths since they are basically identical.
      
      Fixes #233 (hopefully)
      e3b5e9ce
  5. Jul 28, 2018
  6. Apr 03, 2018
  7. Mar 16, 2018
    • Arseny Kapoulkine's avatar
      Refactor noexcept macros · 951c8f15
      Arseny Kapoulkine authored
      Define noexcept using _MSC_VER instead of _MSC_FULL_VER (first release
      of MSVC 2015 should have it), remove redundant PUGIXML_HAS_NOEXCEPT and
      define PUGIXML_NOEXCEPT_IF_NOT_COMPACT in terms of PUGIXML_NOEXCEPT.
      951c8f15
  8. Mar 03, 2018
  9. Mar 02, 2018
  10. Feb 27, 2018
  11. Jan 08, 2018
  12. Sep 26, 2017
    • Arseny Kapoulkine's avatar
      Implement move support for xml_document · a567f12d
      Arseny Kapoulkine authored
      This change implements the initial version of move construction and
      assignment support for documents.
      
      When moving a document to another document, we always make sure move
      target is in "clean" state (empty document), and proceed by relocating
      all structures in the most efficient way possible.
      
      Complications arise from the fact that the root (document) node is
      embedded into xml_document object, so all pointers to it have to change;
      this includes parent pointers of all first-level children as well as
      allocator pointers in all memory pages and previous pointer in the first
      on-heap memory page.
      
      Additionally, compact mode makes everything even more complicated
      because some of the pointers we need to update are stored in the hash
      table (in fact, document first_child pointer is very likely to be there;
      some parent pointers in first-level children will be using
      compact_shared_parent but some won't be) which requires allocating a new
      hash table which can fail.
      
      Some details of this process are not fully fleshed out, especially for
      compact mode; and this definitely requires many tests.
      a567f12d
  13. Jun 22, 2017
  14. Jan 27, 2017
  15. Nov 09, 2016
  16. Nov 07, 2016
  17. Nov 06, 2016
  18. Oct 17, 2016
  19. Oct 05, 2016
  20. Feb 02, 2016
  21. Jan 24, 2016
    • Stephan Beyer's avatar
      Fix whitespace issues · f7aa65db
      Stephan Beyer authored
      Git warns when it finds "whitespace errors". This commit gets
      rid of these whitespace errors for code and adoc files.
      f7aa65db
  22. Jan 13, 2016
  23. Jan 08, 2016
    • Arseny Kapoulkine's avatar
      Add initial support for parse_embed_pcdata · 2874f6f2
      Arseny Kapoulkine authored
      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.
      2874f6f2
  24. Dec 31, 2015
  25. Oct 10, 2015
  26. Sep 20, 2015
  27. May 14, 2015
    • Arseny Kapoulkine's avatar
      Implement xml_node::attribute with a hint · f828eae3
      Arseny Kapoulkine authored
      Extra argument 'hint' is used to start the attribute lookup; if the attribute
      is not found the lookup is restarted from the beginning of the attriubte list.
      
      This allows to optimize attribute lookups if you need to get many attributes
      from the node and can make assumptions about the likely ordering. The code is
      correct regardless of the order, but it is faster than using vanilla lookups
      if the order matches the calling order.
      
      Fixes #30.
      f828eae3
  28. Apr 22, 2015
    • Arseny Kapoulkine's avatar
      XPath: Implement move semantics support · 83b894b8
      Arseny Kapoulkine authored
      xpath_query, xpath_node_set and xpath_variable_set are now moveable.
      
      This is a nice performance optimization for variable/node sets, and enables
      storing xpath_query in containers without using pointers (it's only possible
      now since the query is not copyable).
      83b894b8
  29. Apr 16, 2015
    • Arseny Kapoulkine's avatar
      Implement copy ctor/assignment for xpath_variable_set · cbf3807a
      Arseny Kapoulkine authored
      xpath_variable_set is essentially an associative container; it's about time it
      became copyable.
      
      Implementation is slightly tricky due to out of memory handling. Both copy ctor
      and assignment operator have strong exception guarantee (even if exceptions are
      disabled! which translates to "roll back on allocation errors").
      cbf3807a
  30. Apr 15, 2015
  31. Apr 14, 2015
    • Arseny Kapoulkine's avatar
      Refactor format_indent_attributes implementation · 2a343527
      Arseny Kapoulkine authored
      Fix code style and revert redundant parameters/whitespace changes.
      
      Also remove format_each_attribute_on_new_line - we're only introducing one
      extra formatting flag. The flag implies format_indent but does not include its
      bitmask.
      
      Also add a few more tests.
      
      Fixes #14.
      2a343527
  32. Apr 13, 2015
  33. Mar 21, 2015
  34. Mar 19, 2015
  35. Jan 17, 2015
Loading