[docs]class CommandTreeException(Exception):
pass
[docs]class ExceptionOnContext(CommandTreeException):
def __init__(self, message, context = None):
super(CommandTreeException, self).__init__(message)
self.context = context
self.message = message
def __str__(self):
return "{}: {}".format(self.message, self.context) if self.context else self.message
[docs]class ItemException(ExceptionOnContext):
pass
[docs]class NodeException(ItemException):
pass
[docs]class RootNodeException(NodeException):
pass
[docs]class LeafException(ItemException):
pass
[docs]class ArgumentException(ExceptionOnContext):
pass