Skip to content

cea-hpc/miniyaml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MiniYAML

MiniYAML is a library that complements libyaml. It was created in an effort to to ease the development of C structures serializers/deserializers for the RobinHood project.

Installation

Install libyaml (either from source of using your favorite package manager). MiniYAML was developped using libyaml >= 0.1.7; feel free to test it with an older version.

Download MiniYAML's sources:

git clone https://github.com/cea-hpc/miniyaml.git
cd miniyaml

Build and install with meson and ninja:

meson builddir
ninja -C builddir
sudo ninja -C builddir install

Documentation

To build the API documentation, use doxygen:

# Generate a template configuration file for doxygen (Doxyfile)
doxygen -g

# Change some of the default parameeters:
doxyconfig() {
    sed -i "s|\($1\s*\)=.*$|\1= ${*:2}|" Doxyfile
}
doxyconfig PROJECT_NAME      MiniYAML
doxyconfig INPUT             include
doxyconfig EXTRACT_ALL       YES
doxyconfig EXTRACT_STATIC    YES
doxyconfig ALIASES           error=@exception

# Run doxygen
doxygen

Usage

There is a toy emitter and a toy parser in the examples directory. They should provide users with a good enough overview of how to use miniyaml.

$ ./builddir/examples/emitter
--- !person
"name": "test"
"age": 32
...

$ ./builddir/examples/emitter | ./builddir/examples/parser
person = {.name = test, .age = 32}

About

No description, website, or topics provided.

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Stars

Watchers

Forks

Packages

No packages published