Ponder is a C++ library that provides runtime reflection for types. It provides an abstraction for most of the high-level concepts of C++ like classes, enumerations, properties, functions, and objects. By wrapping all these concepts into abstract structures, Ponder provides an extra layer of flexibility to programs and allows them to expose and manipulate their data structures at runtime. Many applications can take advantage of Ponder, in order to automate tasks that would otherwise require a huge amount of work. For example, Ponder can be used to expose and edit objects' attributes in a graphical user interface. It can also be used to do automatic binding of C++ classes to script languages such as Python or Lua. Another possible application would be the serialization of objects to XML, text or binary formats. Or you can even combine all these examples to provide a powerful and consistent interface for manipulating your objects outside C++ code.

Features

  • Expose C++ classes so they can be found by name or type
  • Create and destroy instance of classes at runtime
  • Get and set properties on member variables
  • Call member and static functions
  • Save class instance data as JSON or XML
  • Automatic Lua binding generation

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

MIT License

Follow Ponder

Ponder Web Site

Other Useful Business Software
BrandMail Email Signatures for Outlook Icon
BrandMail Email Signatures for Outlook

Leverage every email as an opportunity to brand consistently and minimise the security risks associated with the tampering of HTML signatures.

BrandMail®, developed by BrandQuantum, is a software solution that seamlessly integrates with Microsoft Outlook to empower every employee in the organisation to automatically create consistently branded emails via a single toolbar that provides access to brand standards and the latest pre-approved content.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Ponder!

Additional Project Details

Programming Language

C++

Related Categories

C++ Libraries

Registered

2024-06-03