Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/whizzter/rpoco

(R)eflect (P)lain (O)ld (C)++ (O)bjects, is a small header based reflection system that supports JSON serialization,etc
https://github.com/whizzter/rpoco

c-plus-plus cplusplus-11 json json-parser json-serialization macros reflection

Last synced: 2 months ago
JSON representation

(R)eflect (P)lain (O)ld (C)++ (O)bjects, is a small header based reflection system that supports JSON serialization,etc

Awesome Lists containing this project

README

        

# RPOCO (Reflect Plain Old C++ Objects)

## Overview

RPOCO is a small header based reflection system with an accompanying JSON parser
to enable very simple parsing and writing of JSON and other data from the network
and disk to plain C++ objects without having manually write bindings.

## How it works

A RPOCO macro is placed within all classes specifying fields that needs
reading and writing and from that a set of macros and templates expands
a type info structures that the JSON parser/writer and other tools
can hook into to automate serialization work.

## Functionality

Right now there exists a JSON parser and generator and a Mustache template
renderer that builds on top of the library.

Currently the internals design isn't entirely set in stone so users should try
to get in touch if there is interest to add functionality so that work can
be coordinated.

## License

This library is copyrighted under a simple BSD license, see the LICENSE file

The json_parser test files are seprately copyrighted and licensed under a
similar license, see the tests/json/json_parser/LICENSE file