Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

BlackMATov/meta.hpp

Open more actions menu

Repository files navigation

meta.hpp

C++20 Dynamic Reflection Library

linux darwin windows language license

Requirements

Installation

meta.hpp is a header-only library. All you need to do is copy the headers files from headers directory into your project and include them:

#include "meta.hpp/meta_all.hpp"

Also, you can add the root repository directory to your cmake project:

add_subdirectory(external/meta.hpp)
target_link_libraries(your_project_target PUBLIC meta.hpp::meta.hpp)

Or just use the single-header version of the library, which you can find here.

Features

  • can reflect:
    • arrays
    • classes
    • constructors
    • destructors
    • enums
    • functions
    • member
    • methods
    • numbers
    • pointers
    • references
    • typedefs
    • variables
  • has different behaviour bind policies
  • supports multiple and virtual inheritance
  • allows add additional metadata to all types
  • calls functions/methods with runtime variables
  • doesn't contain 3rd-party dependencies
  • can be used without rtti and exceptions

Documentation

Examples

Alternatives

Morty Proxy This is a proxified and sanitized view of the page, visit original site.