• Wenzel Jakob's avatar
    enum_: move most functionality to a non-template implementation · f4245181
    Wenzel Jakob authored
    This commit addresses an inefficiency in how enums are created in
    pybind11. Most of the enum_<> implementation is completely generic --
    however, being a template class, it ended up instantiating vast amounts
    of essentially identical code in larger projects with many enums.
    
    This commit introduces a generic non-templated helper class that is
    compatible with any kind of enumeration. enum_ then becomes a thin
    wrapper around this new class.
    
    The new enum_<> API is designed to be 100% compatible with the old one.
    f4245181
test_enum.py 4.74 KB