A C++ library for parsing Abstract Syntax Trees