c0nk f0b15cd6a0 Change node_map type from map<ptr,ptr> to vector<pair<ptr,ptr>> (#386)
* Change node_map type from map<ptr,ptr> to vector<pair<ptr,ptr>>

Map nodes are now iterated over in document order.

* Change insert_map_pair to always append

Always append in insert_map_pair even if the key is already present.
This breaks the behavior of force_insert which now always inserts KVs
even if the key is already present. The first insert for duplicated keys
now takes precedence for lookups.
2016-07-18 08:54:10 -05:00
2016-01-30 18:28:27 -06:00
2015-03-31 09:33:49 +01:00
2016-03-27 20:39:41 -04:00
2016-03-28 23:47:21 -05:00

yaml-cpp Build Status Documentation

yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec.

To get a feel for how it can be used, see the Tutorial or How to Emit YAML. For the old API (version < 0.5.0), see How To Parse A Document.

Problems?

If you find a bug, post an issue! If you have questions about how to use yaml-cpp, please post it on http://stackoverflow.com and tag it yaml-cpp.

How to Build

yaml-cpp uses CMake to support cross-platform building. The basic steps to build are:

  1. Download and install CMake (Resources -> Download).

Note: If you don't use the provided installer for your platform, make sure that you add CMake's bin folder to your path.

  1. Navigate into the source directory, and type:
mkdir build
cd build
  1. Run CMake. The basic syntax is:
cmake [-G generator] [-DBUILD_SHARED_LIBS=ON|OFF] ..
  • The generator is whatever type of build system you'd like to use. To see a full list of generators on your platform, just run cmake (with no arguments). For example:

    • On Windows, you might use "Visual Studio 12 2013" to generate a Visual Studio 2013 solution
    • On OS X, you might use "Xcode" to generate an Xcode project
    • On a UNIX-y system, simply omit the option to generate a makefile
  • yaml-cpp defaults to building a static library, but you may build a shared library by specifying -DBUILD_SHARED_LIBS=ON.

  • For more options on customizing the build, see the CMakeLists.txt file.

  1. Build it!

  2. To clean up, just remove the build directory.

Recent Release

yaml-cpp 0.5.3 has been released! This is a bug fix release. It also will be the last release that uses Boost; futures releases will require C++11 instead.

yaml-cpp 0.3.0 is still available if you want the old API.

The old API will continue to be supported, and will still receive bugfixes! The 0.3.x and 0.4.x versions will be old API releases, and 0.5.x and above will all be new API releases.

Description
A YAML parser and emitter in C++. This is a mirror of https://github.com/jbeder/yaml-cpp. All credit to the upstream authors.
Readme MIT 7.2 MiB
Languages
C++ 91.5%
Python 5.3%
C 1.2%
CMake 1.1%
Starlark 0.6%
Other 0.2%