Ryan Fleury

Data Desk

Data Desk is a utility program that I originally wrote as a metaprogramming tool for The Melodist. Its purpose is to provide something that I think is missing from C and C++: Properly implemented compile-time type introspection and introspection-based code generation. I've used it for many different kinds of compile-time code generation in my projects, including: Entity boilerplate code generation, UI code generation to automatically implement UI that modifies structures, vertex data generation for maps in Dungeoneer, data serialization (and unserialization) code, and automatically supporting version-based changes in serialized data formats.

The source code for Data Desk, documentation, and examples can all be found online for free.


Video Demonstration