original_docstring:  A decorator to mark abstract base classes derived from |HasProps|.
  
      
docstring: A decorator to mark abstract base classes derived from |HasProps|.
docstring_tokens: A decorator to mark abstract base classes derived from |HasProps| .
code: def abstract(cls):
      ''' A decorator to mark abstract base classes derived from |HasProps|.
  
      '''
      if not issubclass(cls, HasProps):
          raise TypeError("%s is not a subclass of HasProps" % cls.__name__)
  
      # running python with -OO will discard docstrings -> __doc__ is None
      if cls.__doc__ is not None:
          cls.__doc__ += _ABSTRACT_ADMONITION
  
      return cls
code_tokens: def abstract ( cls ) : if not issubclass ( cls , HasProps ) : raise TypeError ( "%s is not a subclass of HasProps" % cls . __name__ ) if cls . __doc__ is not None : cls . __doc__ += _ABSTRACT_ADMONITION return cls
short_docstring: A decorator to mark abstract base classes derived from |HasProps|.
short_docstring_tokens: A decorator to mark abstract base classes derived from |HasProps| .
comment: ''' A decorator to mark abstract base classes derived from |HasProps|.
  
      '''$SEP$# running python with -OO will discard docstrings -> __doc__ is None