yaml-cpp/test
graehl 8d5327d0aa node: id hash_value UnshareSubtrees Deep+ShallowClone ModifyValues
At the cost of exposing some existing detail, enable efficient
unsharing of graph structure (DeepClone), and efficient ShallowClone.

Modify[Key]Values allows in-place modification (or deletion) of
node_data in a Map. (the Key is not modified but provided so the
modification of the value may depend on the key)

UnshareSubtrees for in-place DeepClone copying of
shared subtrees.

id and hash_value allow creating efficient input Node -> output Node
transformations where the result of a previously transformed subtree
may be reused (allowing linear time creation of output trees with
shared subtrees instead of exponential by

Rationale: although YAML::Node faithfully represents the input
document and allows efficient traversal, using it as a large-scale
configuration / AST means that it's easy to unintentionally create
quadratic or worse algorithms modifying the tree.
2022-08-30 13:28:25 -07:00
..
gtest-1.11.0 Update gtest to 1.11.0 (#1086) 2022-02-17 12:08:56 -06:00
integration Fix escaping anchors in keys (#1101) 2022-04-21 08:19:51 -05:00
node node: id hash_value UnshareSubtrees Deep+ShallowClone ModifyValues 2022-08-30 13:28:25 -07:00
binary_test.cpp Use static_cast<unsigned char> on DecodeBase64 to prevent SEGV on negative values (#1051) 2021-10-20 10:18:08 -05:00
BUILD.bazel Add bazel Support (#724) 2019-09-27 10:11:38 -05:00
CMakeLists.txt Update gtest to 1.11.0 (#1086) 2022-02-17 12:08:56 -06:00
create-emitter-tests.py Add optional OnAnchor method to EventHandler (#530) 2019-03-12 15:24:32 -07:00
handler_test.h Factored out HandlerTest as a base class 2014-03-23 16:26:44 -05:00
main.cpp Convert node tests to gtest 2014-03-23 19:21:13 -05:00
mock_event_handler.h Small readability improvements in Parser 2019-11-23 13:17:02 -06:00
ostream_wrapper_test.cpp Refactor CMake to use more modern paradigms (#741) 2019-09-27 09:59:53 -05:00
parser_test.cpp Fix stack overflow (#807) 2020-04-09 13:02:10 -05:00
regex_test.cpp Apply formatting/style tweaks to comply with compile time diagnostics for g++ and clang++ (#686) 2019-03-13 15:18:34 -07:00
specexamples.h Supplement test cases for 2.19 ~ 2.22 schema tags. (#857) 2020-05-12 13:20:45 -05:00