C++Now 2015 has ended
Please visit the C++Now website.
Thursday, May 14 • 11:00am - 12:30pm
Type-safe configuration library

Log in to save this to your schedule and see who's attending!

There are many ways to implement a configuration library; some of them are "stringly-typed", some use boost::any to implement erasure and expose it in their interfaces, but I think that this just means that the abstractions are leaking. I don't want to know what specific type erasure implementation is used in the library; I don't want to deal with things like `any_cast`, and I definitely do not want to ever get `bad_any_cast` thrown at me.

So, I've created a library that allows you to create type-level tags for your data that's to be stored in the configuration object, so the checking for `bad_any_cast` is moved from runtime to compile time, and we all love compile time checks more than runtime ones. This talk is meant as a tour around the library and its features. I will also talk about Boost.TypeIndex library, and some metaprogramming tricks that make using `enable_if` less painful.


avatar for Michał Dominiak

Michał Dominiak

System Software Engineer, Nvidia
Bachelor of Engineering in Computer Science from Wrocław University of Technology. Professional and enthusiast programmer. Interested in the foundational problems of computing, from the lowest levels of CPU architectures, through operating systems and programming language design... Read More →

Thursday May 14, 2015 11:00am - 12:30pm

Attendees (0)