class ViewModel::AbstractError

def initialize

def initialize
  # `detail` is used to provide the exception message. However, it's not safe
  # to just override StandardError's `message` or `to_s` to call `detail`,
  # since some of Ruby's C implementation of Exceptions internally ignores
  # these methods and fetches the invisible internal `idMesg` attribute
  # instead. (!)
  #
  # This means that all fields necessary to derive the detail message must be
  # initialized before calling super().
  super(detail)
end