awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jbeder avatar

jbeder/yaml-cpp

0
View on GitHub↗
5,931 Stars·2,108 Forks·C++·MIT·5 Aufrufe

Yaml Cpp

yaml-cpp is a C++ library for parsing and emitting YAML 1.2 documents. It provides a complete YAML processing pipeline, from reading YAML content into a traversable node tree to writing in-memory data structures back as YAML text.

The library represents parsed YAML as a mutable tree of typed nodes, supporting scalars, sequences, maps, and aliases. It uses a recursive-descent parser to build this node tree, and a stream-based emitter to generate YAML output incrementally. Template-based type conversion enables compile-time serialization between YAML nodes and C++ types, including support for custom user-defined structs and standard STL containers.

For output formatting, the library offers manipulator-driven control over flow style, block style, comments, and anchors. It includes null-safe node access that returns default values for missing keys, and supports ASCII-only output mode that escapes all non-ASCII characters. The library also provides emitter error detection to catch malformed output during emission.

Features

  • YAML Libraries - A C++ library for parsing and emitting YAML 1.2 documents with nested structures and custom types.
  • Node-Tree Data Models - Represents parsed YAML as a mutable tree of typed nodes supporting traversal and in-place editing.
  • YAML Node Values - Extracts typed data from a node and assigns new values for round-trip editing.
  • Collection Iteration - Exposes YAML sequences and maps through standard C++ iterators for element traversal.
  • YAML Stream Emitters - Generates YAML output incrementally through a stream abstraction that accepts manipulator commands.
  • Recursive Descent Parsers - Parses YAML tokens by recursively descending through grammar rules to build a typed node tree.
  • YAML Data Serialization - Emits in-memory C++ data structures as YAML 1.2 formatted text.
  • YAML Structure Builders - Constructs hierarchical YAML structures by nesting sequence and map manipulators.
  • YAML Structure Builders - Constructs nested maps, sequences, scalars, and aliases from scratch using bracket and push operations.
  • Compile-Time Serialization - Converts between YAML nodes and C++ types using template specializations for compile-time serialization.
  • YAML Node Conversions - Specializes a conversion template to encode and decode user-defined structs as YAML nodes.
  • Multi-Document YAML Parsing - Loads YAML 1.2 documents into a traversable node tree for programmatic access.
  • YAML Serializers - Writes C++ data structures as YAML 1.2 formatted text for storage or transmission.
  • Streaming Emitters - Writes YAML output incrementally using stream manipulators to produce structured text.
  • Output Format Manipulators - Provides manipulator-driven control over flow style, block style, comments, and anchors in YAML output.
  • YAML Format Modifiers - Applies formatting modifiers like literal blocks, flow style, comments, and anchors to customize YAML output.
  • YAML Output Format Modifiers - Applies formatting modifiers like literal blocks, flow style, comments, and anchors to customize YAML output.
  • YAML Node Types - Queries whether a node is a scalar, sequence, map, null, or undefined to handle heterogeneous data safely.
  • Template-Based Type Serializers - Provides template-based compile-time serialization for custom C++ structs to YAML nodes.
  • STL Container Outputs - Outputs standard C++ vectors, lists, and maps directly as YAML sequences or mappings.
  • XML and YAML Node Navigation - Builds, inspects, and modifies hierarchical YAML structures using sequences, maps, and scalars.
  • Default Value Returns - Provides null-safe node access that returns default values for missing keys during YAML traversal.
  • AI & Machine Learning - YAML parser and emitter
  • Serialization and Parsing - Parser and emitter for YAML data.
  • Data Serialization - YAML parser and emitter for C++.

Star-Verlauf

Star-Verlauf für jbeder/yaml-cppStar-Verlauf für jbeder/yaml-cpp

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht jbeder/yaml-cpp?

yaml-cpp is a C++ library for parsing and emitting YAML 1.2 documents. It provides a complete YAML processing pipeline, from reading YAML content into a traversable node tree to writing in-memory data structures back as YAML text.

Was sind die Hauptfunktionen von jbeder/yaml-cpp?

Die Hauptfunktionen von jbeder/yaml-cpp sind: YAML Libraries, Node-Tree Data Models, YAML Node Values, Collection Iteration, YAML Stream Emitters, Recursive Descent Parsers, YAML Data Serialization, YAML Structure Builders.

Welche Open-Source-Alternativen gibt es zu jbeder/yaml-cpp?

Open-Source-Alternativen zu jbeder/yaml-cpp sind unter anderem: nodeca/js-yaml — js-yaml is a JavaScript library providing a programmatic interface for parsing and dumping YAML data. It functions as… symfony/yaml — This project is a PHP library that serves as a configuration file processor, providing a bridge to translate… goccy/go-yaml — This library is a Go-based utility for encoding and decoding YAML data into native language structures. It facilitates… dtolnay/serde-yaml — Serde-yaml is a serialization library for the Rust programming language that facilitates the conversion of complex… jeremyfa/yaml.js — This library provides a parser and encoder for YAML 1.2 data structures, enabling the transformation of human-readable… msgspec/msgspec — msgspec is a high-performance data modeling, serialization, and schema validation toolkit for Python. It serves as a…

Open-Source-Alternativen zu Yaml Cpp

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Yaml Cpp.
  • nodeca/js-yamlAvatar von nodeca

    nodeca/js-yaml

    6,591Auf GitHub ansehen↗

    js-yaml is a JavaScript library providing a programmatic interface for parsing and dumping YAML data. It functions as a parser and serializer that converts YAML strings into JavaScript objects and transforms JavaScript objects back into YAML format. The library includes a command-line interface for parsing or dumping YAML data via direct input or data pipes. It also features an abstract syntax tree transformer to modify the structure of data during serialization. The project provides capabilities for multi-document processing and the definition of custom schemas and tags to handle specialize

    JavaScript
    Auf GitHub ansehen↗6,591
  • symfony/yamlAvatar von symfony

    symfony/yaml

    3,843Auf GitHub ansehen↗

    This project is a PHP library that serves as a configuration file processor, providing a bridge to translate human-readable YAML text into native PHP arrays and objects. It functions as both a parser for converting YAML content into application-ready data structures and a serializer for transforming PHP data back into formatted YAML strings. The library includes security protections designed to prevent memory exhaustion and stack overflow attacks when processing untrusted documents. It ensures structural integrity through syntax validation and provides a command-line utility to check files fo

    PHPcomponentphpsymfony
    Auf GitHub ansehen↗3,843
  • goccy/go-yamlAvatar von goccy

    goccy/go-yaml

    2,189Auf GitHub ansehen↗

    This library is a Go-based utility for encoding and decoding YAML data into native language structures. It facilitates the transformation of complex objects into human-readable text formats and provides mechanisms for mapping data fields through reflection and custom type handling. The library distinguishes itself by maintaining an intermediate abstract syntax tree, which allows for precise document modifications and the preservation of comments during serialization. It includes a path-based query engine that enables users to navigate, filter, and update document hierarchies without manual it

    Gogogolanggolang-library
    Auf GitHub ansehen↗2,189
  • dtolnay/serde-yamlAvatar von dtolnay

    dtolnay/serde-yaml

    1,019Auf GitHub ansehen↗

    Serde-yaml is a serialization library for the Rust programming language that facilitates the conversion of complex data structures into YAML format and the deserialization of YAML text into strongly typed objects. It functions as a data format converter, enabling the transformation of structured information between native language types and human-readable configuration files. The library integrates with the standard Rust serialization ecosystem to map arbitrary data types to and from the YAML format. By utilizing trait-based data mapping, it allows developers to manage application settings an

    Rustrustserdeyaml
    Auf GitHub ansehen↗1,019
Alle 30 Alternativen zu Yaml Cpp anzeigen→