def supershapes_dict():
    """Return a dict of all supershapes in this module keyed by name."""
    current_module = sys.modules[__name__]
    supershapes = dict()
    for name, obj in inspect.getmembers(current_module):
        try:
            if issubclass(obj, _SuperShape) and (name[0] != '_'):
                supershapes[name] = obj()
        except __HOLE__:
            pass  # issubclass complains for non class obj
    return supershapes
dataset/ETHPy150Open kobejohn/polymaze/polymaze/shapes.py/supershapes_dict