def abstract(cls):
    """ A phony decorator to mark abstract base classes. """
    if not issubclass(cls, HasProps):
        raise TypeError("%s is not a subclass of HasProps" % cls.__name__)

    return cls
dataset/ETHPy150Open bokeh/bokeh/bokeh/core/properties.py/abstract/original