# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.1.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _ooferror2
else:
    import _ooferror2

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)



from ooflib.common import ooferrorwrappers

import ooflib.SWIG.common.ooferror
class ErrNoSuchField(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, m):
        _ooferror2.ErrNoSuchField_swiginit(self, _ooferror2.new_ErrNoSuchField(m))
    __swig_destroy__ = _ooferror2.delete_ErrNoSuchField

    def __repr__(self):
        return _ooferror2.ErrNoSuchField___repr__(self)

# Register ErrNoSuchField in _ooferror2:
_ooferror2.ErrNoSuchField_swigregister(ErrNoSuchField)


class PyErrNoSuchField(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrNoSuchField(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrNoSuchField] = PyErrNoSuchField

class ErrDuplicateField(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2, arg3, arg4):
        _ooferror2.ErrDuplicateField_swiginit(self, _ooferror2.new_ErrDuplicateField(arg2, arg3, arg4))
    __swig_destroy__ = _ooferror2.delete_ErrDuplicateField

    def __repr__(self):
        return _ooferror2.ErrDuplicateField___repr__(self)

# Register ErrDuplicateField in _ooferror2:
_ooferror2.ErrDuplicateField_swigregister(ErrDuplicateField)


class PyErrDuplicateField(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrDuplicateField(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrDuplicateField] = PyErrDuplicateField

class ErrNoSuchProperty(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2, arg3):
        _ooferror2.ErrNoSuchProperty_swiginit(self, _ooferror2.new_ErrNoSuchProperty(arg2, arg3))
    __swig_destroy__ = _ooferror2.delete_ErrNoSuchProperty

    def __repr__(self):
        return _ooferror2.ErrNoSuchProperty___repr__(self)

# Register ErrNoSuchProperty in _ooferror2:
_ooferror2.ErrNoSuchProperty_swigregister(ErrNoSuchProperty)


class PyErrNoSuchProperty(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrNoSuchProperty(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrNoSuchProperty] = PyErrNoSuchProperty

class ErrPropertyMissing(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2, arg3, arg4):
        _ooferror2.ErrPropertyMissing_swiginit(self, _ooferror2.new_ErrPropertyMissing(arg2, arg3, arg4))
    __swig_destroy__ = _ooferror2.delete_ErrPropertyMissing

    def __repr__(self):
        return _ooferror2.ErrPropertyMissing___repr__(self)

# Register ErrPropertyMissing in _ooferror2:
_ooferror2.ErrPropertyMissing_swigregister(ErrPropertyMissing)


class PyErrPropertyMissing(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrPropertyMissing(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrPropertyMissing] = PyErrPropertyMissing

class ErrBadMaterial(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2):
        _ooferror2.ErrBadMaterial_swiginit(self, _ooferror2.new_ErrBadMaterial(arg2))
    __swig_destroy__ = _ooferror2.delete_ErrBadMaterial

    def materialName(self):
        return _ooferror2.ErrBadMaterial_materialName(self)

    def __repr__(self):
        return _ooferror2.ErrBadMaterial___repr__(self)

# Register ErrBadMaterial in _ooferror2:
_ooferror2.ErrBadMaterial_swigregister(ErrBadMaterial)


class PyErrBadMaterial(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrBadMaterial(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrBadMaterial] = PyErrBadMaterial

class ErrRedundantProperty(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2):
        _ooferror2.ErrRedundantProperty_swiginit(self, _ooferror2.new_ErrRedundantProperty(arg2))
    __swig_destroy__ = _ooferror2.delete_ErrRedundantProperty

    def get_tag(self):
        return _ooferror2.ErrRedundantProperty_get_tag(self)

    def __repr__(self):
        return _ooferror2.ErrRedundantProperty___repr__(self)

# Register ErrRedundantProperty in _ooferror2:
_ooferror2.ErrRedundantProperty_swigregister(ErrRedundantProperty)


class PyErrRedundantProperty(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrRedundantProperty(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrRedundantProperty] = PyErrRedundantProperty

class ErrConvergenceFailure(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2, arg3):
        _ooferror2.ErrConvergenceFailure_swiginit(self, _ooferror2.new_ErrConvergenceFailure(arg2, arg3))
    __swig_destroy__ = _ooferror2.delete_ErrConvergenceFailure

    def __repr__(self):
        return _ooferror2.ErrConvergenceFailure___repr__(self)

# Register ErrConvergenceFailure in _ooferror2:
_ooferror2.ErrConvergenceFailure_swigregister(ErrConvergenceFailure)


class PyErrConvergenceFailure(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrConvergenceFailure(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrConvergenceFailure] = PyErrConvergenceFailure

class ErrTimeStepTooSmall(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, arg2):
        _ooferror2.ErrTimeStepTooSmall_swiginit(self, _ooferror2.new_ErrTimeStepTooSmall(arg2))
    __swig_destroy__ = _ooferror2.delete_ErrTimeStepTooSmall

    def __repr__(self):
        return _ooferror2.ErrTimeStepTooSmall___repr__(self)

# Register ErrTimeStepTooSmall in _ooferror2:
_ooferror2.ErrTimeStepTooSmall_swigregister(ErrTimeStepTooSmall)


class PyErrTimeStepTooSmall(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrTimeStepTooSmall(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrTimeStepTooSmall] = PyErrTimeStepTooSmall

class ErrInvalidDestination(ooflib.SWIG.common.ooferror.ErrError):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self):
        _ooferror2.ErrInvalidDestination_swiginit(self, _ooferror2.new_ErrInvalidDestination())
    __swig_destroy__ = _ooferror2.delete_ErrInvalidDestination

    def __repr__(self):
        return _ooferror2.ErrInvalidDestination___repr__(self)

# Register ErrInvalidDestination in _ooferror2:
_ooferror2.ErrInvalidDestination_swigregister(ErrInvalidDestination)


class PyErrInvalidDestination(ooferrorwrappers.PyOOFError):
  def __init__(self, *args, **kwargs):
    self.cexcept = kwargs.get("cexcept", None)
    if self.cexcept is None:
      self.cexcept = ErrInvalidDestination(*args, **kwargs)
  def __getattr__(self, attr):
    return getattr(self.cexcept, attr)
  def __repr__(self):
    return self.cexcept.summary()
  def __str__(self):
    return self.cexcept.summary()
ooferrorwrappers.pyErrorWrappers[ErrInvalidDestination] = PyErrInvalidDestination

# -*- python -*-

# This software was produced by NIST, an agency of the U.S. government,
# and by statute is not subject to copyright in the United States.
# Recipients of this software assume all responsibilities associated
# with its operation, modification and maintenance. However, to
# facilitate maintenance we ask that before distributing modified
# versions of this software, you first contact the authors at
# oof_manager@nist.gov. 

from ooflib.SWIG.common.ooferror import *

def _ErrBadMaterial_details(self):
    from ooflib.engine import materialmanager
    mat = materialmanager.getMaterial(self.materialName())
    return "\n".join(mat.consistency_messages())

PyErrBadMaterial.details = _ErrBadMaterial_details


