/KeyValues

KeyValues library for C++17

Primary LanguageC++MIT LicenseMIT

KeyValues

KeyValues is a serialization format used in Source Engine. This is my own KeyValues library for made in C++17. It's not the fastest, but it's built to be syntactically simple.

This is maybe a bit more flexible than Valve's format, but it doesn't support UTF-16-LE which is used for translations files in Source.

Current Features:

  • UTF-8
  • Multi-key support (can have multiple keys of the same name)
  • Single-line comments //
  • Mutli-line comments /**/
  • Basic parsing error checking with messages piped to a debug callback if set.