# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.10
#
# 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
if _swig_python_version_info >= (2, 7, 0):
    def swig_import_helper():
        import importlib
        pkg = __name__.rpartition('.')[0]
        mname = '.'.join((pkg, '_rbc')).lstrip('.')
        try:
            return importlib.import_module(mname)
        except ImportError:
            return importlib.import_module('_rbc')
    _rbc = swig_import_helper()
    del swig_import_helper
elif _swig_python_version_info >= (2, 6, 0):
    def swig_import_helper():
        from os.path import dirname
        import imp
        fp = None
        try:
            fp, pathname, description = imp.find_module('_rbc', [dirname(__file__)])
        except ImportError:
            import _rbc
            return _rbc
        if fp is not None:
            try:
                _mod = imp.load_module('_rbc', fp, pathname, description)
            finally:
                fp.close()
            return _mod
    _rbc = swig_import_helper()
    del swig_import_helper
else:
    import _rbc
del _swig_python_version_info
try:
    _swig_property = property
except NameError:
    pass  # Python < 2.2 doesn't have 'property'.

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
    if (name == "thisown"):
        return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name, None)
    if method:
        return method(self, value)
    if (not static):
        if _newclass:
            object.__setattr__(self, name, value)
        else:
            self.__dict__[name] = value
    else:
        raise AttributeError("You cannot add attributes to %s" % self)


def _swig_setattr(self, class_type, name, value):
    return _swig_setattr_nondynamic(self, class_type, name, value, 0)


def _swig_getattr(self, class_type, name):
    if (name == "thisown"):
        return self.this.own()
    method = class_type.__swig_getmethods__.get(name, None)
    if method:
        return method(self)
    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))


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,)

try:
    _object = object
    _newclass = 1
except __builtin__.Exception:
    class _object:
        pass
    _newclass = 0

PRIuPTR = _rbc.PRIuPTR
PRIdPTR = _rbc.PRIdPTR
LLU = _rbc.LLU
LLO = _rbc.LLO
LLX = _rbc.LLX
false = _rbc.false
true = _rbc.true
OUTCOME_GENERIC_ERROR = _rbc.OUTCOME_GENERIC_ERROR
OUTCOME_PARSER_ERROR = _rbc.OUTCOME_PARSER_ERROR
OUTCOME_SYNTAX_ERROR = _rbc.OUTCOME_SYNTAX_ERROR
OUTCOME_FILE_ERROR = _rbc.OUTCOME_FILE_ERROR
OUTCOME_SUCCESS_REQUIRED_HELP = _rbc.OUTCOME_SUCCESS_REQUIRED_HELP
OUTCOME_SUCCESS = _rbc.OUTCOME_SUCCESS

def ConjSet_create(rbcm: 'Rbc_Manager_t *') -> "ConjSet_ptr":
    """ConjSet_create(Rbc_Manager_t * rbcm) -> ConjSet_ptr"""
    return _rbc.ConjSet_create(rbcm)

def ConjSet_destroy(arg1: 'ConjSet_ptr') -> "void":
    """ConjSet_destroy(ConjSet_ptr arg1)"""
    return _rbc.ConjSet_destroy(arg1)

def ConjSet_copy(arg1: 'ConjSet_ptr const') -> "ConjSet_ptr":
    """ConjSet_copy(ConjSet_ptr const arg1) -> ConjSet_ptr"""
    return _rbc.ConjSet_copy(arg1)

def ConjSet_add_var_assign(arg1: 'ConjSet_ptr', var: 'Rbc_t *', expr: 'Rbc_t *') -> "void":
    """ConjSet_add_var_assign(ConjSet_ptr arg1, Rbc_t * var, Rbc_t * expr)"""
    return _rbc.ConjSet_add_var_assign(arg1, var, expr)

def ConjSet_inherit_from(arg1: 'ConjSet_ptr', other: 'ConjSet_ptr const') -> "void":
    """ConjSet_inherit_from(ConjSet_ptr arg1, ConjSet_ptr const other)"""
    return _rbc.ConjSet_inherit_from(arg1, other)

def ConjSet_flattenize(arg1: 'ConjSet_ptr') -> "void":
    """ConjSet_flattenize(ConjSet_ptr arg1)"""
    return _rbc.ConjSet_flattenize(arg1)

def ConjSet_substitute(arg1: 'ConjSet_ptr', f: 'Rbc_t *') -> "Rbc_t *":
    """ConjSet_substitute(ConjSet_ptr arg1, Rbc_t * f) -> Rbc_t *"""
    return _rbc.ConjSet_substitute(arg1, f)

def ConjSet_conjoin(arg1: 'ConjSet_ptr', f: 'Rbc_t *') -> "Rbc_t *":
    """ConjSet_conjoin(ConjSet_ptr arg1, Rbc_t * f) -> Rbc_t *"""
    return _rbc.ConjSet_conjoin(arg1, f)

def InlineResult_create(mgr: 'Rbc_Manager_t *', f: 'Rbc_t *') -> "InlineResult_ptr":
    """InlineResult_create(Rbc_Manager_t * mgr, Rbc_t * f) -> InlineResult_ptr"""
    return _rbc.InlineResult_create(mgr, f)

def InlineResult_destroy(arg1: 'InlineResult_ptr') -> "void":
    """InlineResult_destroy(InlineResult_ptr arg1)"""
    return _rbc.InlineResult_destroy(arg1)

def InlineResult_copy(arg1: 'InlineResult_ptr const') -> "InlineResult_ptr":
    """InlineResult_copy(InlineResult_ptr const arg1) -> InlineResult_ptr"""
    return _rbc.InlineResult_copy(arg1)

def InlineResult_get_original_f(arg1: 'InlineResult_ptr') -> "Rbc_t *":
    """InlineResult_get_original_f(InlineResult_ptr arg1) -> Rbc_t *"""
    return _rbc.InlineResult_get_original_f(arg1)

def InlineResult_get_inlined_f(arg1: 'InlineResult_ptr') -> "Rbc_t *":
    """InlineResult_get_inlined_f(InlineResult_ptr arg1) -> Rbc_t *"""
    return _rbc.InlineResult_get_inlined_f(arg1)

def InlineResult_get_c(arg1: 'InlineResult_ptr') -> "Rbc_t *":
    """InlineResult_get_c(InlineResult_ptr arg1) -> Rbc_t *"""
    return _rbc.InlineResult_get_c(arg1)

def InlineResult_get_inlined_f_and_c(arg1: 'InlineResult_ptr') -> "Rbc_t *":
    """InlineResult_get_inlined_f_and_c(InlineResult_ptr arg1) -> Rbc_t *"""
    return _rbc.InlineResult_get_inlined_f_and_c(arg1)
RBC_TSEITIN_CONVERSION_NAME = _rbc.RBC_TSEITIN_CONVERSION_NAME
RBC_SHERIDAN_CONVERSION_NAME = _rbc.RBC_SHERIDAN_CONVERSION_NAME
RBC_INVALID_CONVERSION_NAME = _rbc.RBC_INVALID_CONVERSION_NAME
RBC_INVALID_CONVERSION = _rbc.RBC_INVALID_CONVERSION
RBC_TSEITIN_CONVERSION = _rbc.RBC_TSEITIN_CONVERSION
RBC_SHERIDAN_CONVERSION = _rbc.RBC_SHERIDAN_CONVERSION
RBC_FALSE = _rbc.RBC_FALSE
RBC_TRUE = _rbc.RBC_TRUE
class RbcDfsFunctions(_object):
    """Proxy of C RbcDfsFunctions struct."""

    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, RbcDfsFunctions, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, RbcDfsFunctions, name)
    __repr__ = _swig_repr
    __swig_setmethods__["Set"] = _rbc.RbcDfsFunctions_Set_set
    __swig_getmethods__["Set"] = _rbc.RbcDfsFunctions_Set_get
    if _newclass:
        Set = _swig_property(_rbc.RbcDfsFunctions_Set_get, _rbc.RbcDfsFunctions_Set_set)
    __swig_setmethods__["FirstVisit"] = _rbc.RbcDfsFunctions_FirstVisit_set
    __swig_getmethods__["FirstVisit"] = _rbc.RbcDfsFunctions_FirstVisit_get
    if _newclass:
        FirstVisit = _swig_property(_rbc.RbcDfsFunctions_FirstVisit_get, _rbc.RbcDfsFunctions_FirstVisit_set)
    __swig_setmethods__["BackVisit"] = _rbc.RbcDfsFunctions_BackVisit_set
    __swig_getmethods__["BackVisit"] = _rbc.RbcDfsFunctions_BackVisit_get
    if _newclass:
        BackVisit = _swig_property(_rbc.RbcDfsFunctions_BackVisit_get, _rbc.RbcDfsFunctions_BackVisit_set)
    __swig_setmethods__["LastVisit"] = _rbc.RbcDfsFunctions_LastVisit_set
    __swig_getmethods__["LastVisit"] = _rbc.RbcDfsFunctions_LastVisit_get
    if _newclass:
        LastVisit = _swig_property(_rbc.RbcDfsFunctions_LastVisit_get, _rbc.RbcDfsFunctions_LastVisit_set)

    def __init__(self):
        """__init__(RbcDfsFunctions self) -> RbcDfsFunctions"""
        this = _rbc.new_RbcDfsFunctions()
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _rbc.delete_RbcDfsFunctions
    __del__ = lambda self: None
RbcDfsFunctions_swigregister = _rbc.RbcDfsFunctions_swigregister
RbcDfsFunctions_swigregister(RbcDfsFunctions)


def Rbc_pkg_init() -> "void":
    """Rbc_pkg_init()"""
    return _rbc.Rbc_pkg_init()

def Rbc_pkg_quit() -> "void":
    """Rbc_pkg_quit()"""
    return _rbc.Rbc_pkg_quit()

def Rbc_Convert2Cnf(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', polarity: 'int', clauses: 'Slist_ptr', vars: 'Slist_ptr', literalAssignedToWholeFormula: 'int *') -> "int":
    """Rbc_Convert2Cnf(Rbc_Manager_t * rbcManager, Rbc_t * f, int polarity, Slist_ptr clauses, Slist_ptr vars, int * literalAssignedToWholeFormula) -> int"""
    return _rbc.Rbc_Convert2Cnf(rbcManager, f, polarity, clauses, vars, literalAssignedToWholeFormula)

def Rbc_CnfVar2RbcIndex(rbcManager: 'Rbc_Manager_t *', cnfVar: 'int') -> "int":
    """Rbc_CnfVar2RbcIndex(Rbc_Manager_t * rbcManager, int cnfVar) -> int"""
    return _rbc.Rbc_CnfVar2RbcIndex(rbcManager, cnfVar)

def Rbc_RbcIndex2CnfVar(rbcManager: 'Rbc_Manager_t *', rbcIndex: 'int') -> "int":
    """Rbc_RbcIndex2CnfVar(Rbc_Manager_t * rbcManager, int rbcIndex) -> int"""
    return _rbc.Rbc_RbcIndex2CnfVar(rbcManager, rbcIndex)

def Rbc_GetOne(rbcManager: 'Rbc_Manager_t *') -> "Rbc_t *":
    """Rbc_GetOne(Rbc_Manager_t * rbcManager) -> Rbc_t *"""
    return _rbc.Rbc_GetOne(rbcManager)

def Rbc_GetZero(rbcManager: 'Rbc_Manager_t *') -> "Rbc_t *":
    """Rbc_GetZero(Rbc_Manager_t * rbcManager) -> Rbc_t *"""
    return _rbc.Rbc_GetZero(rbcManager)

def Rbc_IsConstant(manager: 'Rbc_Manager_t *', f: 'Rbc_t *') -> "boolean":
    """Rbc_IsConstant(Rbc_Manager_t * manager, Rbc_t * f) -> boolean"""
    return _rbc.Rbc_IsConstant(manager, f)

def Rbc_GetIthVar(rbcManager: 'Rbc_Manager_t *', varIndex: 'int') -> "Rbc_t *":
    """Rbc_GetIthVar(Rbc_Manager_t * rbcManager, int varIndex) -> Rbc_t *"""
    return _rbc.Rbc_GetIthVar(rbcManager, varIndex)

def Rbc_MakeNot(rbcManager: 'Rbc_Manager_t *', left: 'Rbc_t *') -> "Rbc_t *":
    """Rbc_MakeNot(Rbc_Manager_t * rbcManager, Rbc_t * left) -> Rbc_t *"""
    return _rbc.Rbc_MakeNot(rbcManager, left)

def Rbc_MakeAnd(rbcManager: 'Rbc_Manager_t *', left: 'Rbc_t *', right: 'Rbc_t *', sign: 'Rbc_Bool_c') -> "Rbc_t *":
    """Rbc_MakeAnd(Rbc_Manager_t * rbcManager, Rbc_t * left, Rbc_t * right, Rbc_Bool_c sign) -> Rbc_t *"""
    return _rbc.Rbc_MakeAnd(rbcManager, left, right, sign)

def Rbc_MakeOr(rbcManager: 'Rbc_Manager_t *', left: 'Rbc_t *', right: 'Rbc_t *', sign: 'Rbc_Bool_c') -> "Rbc_t *":
    """Rbc_MakeOr(Rbc_Manager_t * rbcManager, Rbc_t * left, Rbc_t * right, Rbc_Bool_c sign) -> Rbc_t *"""
    return _rbc.Rbc_MakeOr(rbcManager, left, right, sign)

def Rbc_MakeIff(rbcManager: 'Rbc_Manager_t *', left: 'Rbc_t *', right: 'Rbc_t *', sign: 'Rbc_Bool_c') -> "Rbc_t *":
    """Rbc_MakeIff(Rbc_Manager_t * rbcManager, Rbc_t * left, Rbc_t * right, Rbc_Bool_c sign) -> Rbc_t *"""
    return _rbc.Rbc_MakeIff(rbcManager, left, right, sign)

def Rbc_MakeXor(rbcManager: 'Rbc_Manager_t *', left: 'Rbc_t *', right: 'Rbc_t *', sign: 'Rbc_Bool_c') -> "Rbc_t *":
    """Rbc_MakeXor(Rbc_Manager_t * rbcManager, Rbc_t * left, Rbc_t * right, Rbc_Bool_c sign) -> Rbc_t *"""
    return _rbc.Rbc_MakeXor(rbcManager, left, right, sign)

def Rbc_MakeIte(rbcManager: 'Rbc_Manager_t *', c: 'Rbc_t *', t: 'Rbc_t *', e: 'Rbc_t *', sign: 'Rbc_Bool_c') -> "Rbc_t *":
    """Rbc_MakeIte(Rbc_Manager_t * rbcManager, Rbc_t * c, Rbc_t * t, Rbc_t * e, Rbc_Bool_c sign) -> Rbc_t *"""
    return _rbc.Rbc_MakeIte(rbcManager, c, t, e, sign)

def Rbc_GetLeftOpnd(f: 'Rbc_t *') -> "Rbc_t *":
    """Rbc_GetLeftOpnd(Rbc_t * f) -> Rbc_t *"""
    return _rbc.Rbc_GetLeftOpnd(f)

def Rbc_GetRightOpnd(f: 'Rbc_t *') -> "Rbc_t *":
    """Rbc_GetRightOpnd(Rbc_t * f) -> Rbc_t *"""
    return _rbc.Rbc_GetRightOpnd(f)

def Rbc_GetVarIndex(f: 'Rbc_t *') -> "int":
    """Rbc_GetVarIndex(Rbc_t * f) -> int"""
    return _rbc.Rbc_GetVarIndex(f)

def Rbc_Mark(rbc: 'Rbc_Manager_t *', f: 'Rbc_t *') -> "void":
    """Rbc_Mark(Rbc_Manager_t * rbc, Rbc_t * f)"""
    return _rbc.Rbc_Mark(rbc, f)

def Rbc_Unmark(rbc: 'Rbc_Manager_t *', f: 'Rbc_t *') -> "void":
    """Rbc_Unmark(Rbc_Manager_t * rbc, Rbc_t * f)"""
    return _rbc.Rbc_Unmark(rbc, f)

def Rbc_ManagerAlloc(varCapacity: 'int') -> "Rbc_Manager_t *":
    """Rbc_ManagerAlloc(int varCapacity) -> Rbc_Manager_t *"""
    return _rbc.Rbc_ManagerAlloc(varCapacity)

def Rbc_ManagerReserve(rbcManager: 'Rbc_Manager_t *', newVarCapacity: 'int') -> "void":
    """Rbc_ManagerReserve(Rbc_Manager_t * rbcManager, int newVarCapacity)"""
    return _rbc.Rbc_ManagerReserve(rbcManager, newVarCapacity)

def Rbc_ManagerReset(rbcManager: 'Rbc_Manager_t *') -> "void":
    """Rbc_ManagerReset(Rbc_Manager_t * rbcManager)"""
    return _rbc.Rbc_ManagerReset(rbcManager)

def Rbc_ManagerCapacity(rbcManager: 'Rbc_Manager_t *') -> "int":
    """Rbc_ManagerCapacity(Rbc_Manager_t * rbcManager) -> int"""
    return _rbc.Rbc_ManagerCapacity(rbcManager)

def Rbc_ManagerFree(rbcManager: 'Rbc_Manager_t *') -> "void":
    """Rbc_ManagerFree(Rbc_Manager_t * rbcManager)"""
    return _rbc.Rbc_ManagerFree(rbcManager)

def Rbc_ManagerGC(rbcManager: 'Rbc_Manager_t *') -> "void":
    """Rbc_ManagerGC(Rbc_Manager_t * rbcManager)"""
    return _rbc.Rbc_ManagerGC(rbcManager)

def Rbc_OutputDaVinci(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', outFile: 'FILE *') -> "void":
    """Rbc_OutputDaVinci(Rbc_Manager_t * rbcManager, Rbc_t * f, FILE * outFile)"""
    return _rbc.Rbc_OutputDaVinci(rbcManager, f, outFile)

def Rbc_OutputSexpr(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', outFile: 'FILE *') -> "void":
    """Rbc_OutputSexpr(Rbc_Manager_t * rbcManager, Rbc_t * f, FILE * outFile)"""
    return _rbc.Rbc_OutputSexpr(rbcManager, f, outFile)

def Rbc_OutputGdl(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', outFile: 'FILE *') -> "void":
    """Rbc_OutputGdl(Rbc_Manager_t * rbcManager, Rbc_t * f, FILE * outFile)"""
    return _rbc.Rbc_OutputGdl(rbcManager, f, outFile)

def Rbc_Subst(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', subst: 'int *') -> "Rbc_t *":
    """Rbc_Subst(Rbc_Manager_t * rbcManager, Rbc_t * f, int * subst) -> Rbc_t *"""
    return _rbc.Rbc_Subst(rbcManager, f, subst)

def Rbc_LogicalSubst(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', subst: 'int *', log2phy: 'int const *', phy2log: 'int const *') -> "Rbc_t *":
    """Rbc_LogicalSubst(Rbc_Manager_t * rbcManager, Rbc_t * f, int * subst, int const * log2phy, int const * phy2log) -> Rbc_t *"""
    return _rbc.Rbc_LogicalSubst(rbcManager, f, subst, log2phy, phy2log)

def Rbc_Shift(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', shift: 'int') -> "Rbc_t *":
    """Rbc_Shift(Rbc_Manager_t * rbcManager, Rbc_t * f, int shift) -> Rbc_t *"""
    return _rbc.Rbc_Shift(rbcManager, f, shift)

def Rbc_LogicalShift(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', shift: 'int', log2phy: 'int const *', phy2log: 'int const *') -> "Rbc_t *":
    """Rbc_LogicalShift(Rbc_Manager_t * rbcManager, Rbc_t * f, int shift, int const * log2phy, int const * phy2log) -> Rbc_t *"""
    return _rbc.Rbc_LogicalShift(rbcManager, f, shift, log2phy, phy2log)

def Rbc_SubstRbc(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', substRbc: 'Rbc_t **') -> "Rbc_t *":
    """Rbc_SubstRbc(Rbc_Manager_t * rbcManager, Rbc_t * f, Rbc_t ** substRbc) -> Rbc_t *"""
    return _rbc.Rbc_SubstRbc(rbcManager, f, substRbc)

def Rbc_LogicalSubstRbc(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', substRbc: 'Rbc_t **', phy2log: 'int *') -> "Rbc_t *":
    """Rbc_LogicalSubstRbc(Rbc_Manager_t * rbcManager, Rbc_t * f, Rbc_t ** substRbc, int * phy2log) -> Rbc_t *"""
    return _rbc.Rbc_LogicalSubstRbc(rbcManager, f, substRbc, phy2log)

def Rbc_PrintStats(rbcManager: 'Rbc_Manager_t *', clustSz: 'int', outFile: 'FILE *') -> "void":
    """Rbc_PrintStats(Rbc_Manager_t * rbcManager, int clustSz, FILE * outFile)"""
    return _rbc.Rbc_PrintStats(rbcManager, clustSz, outFile)

def RbcUtils_get_dependencies(rbcManager: 'Rbc_Manager_t *', f: 'Rbc_t *', reset_dag: 'boolean') -> "Slist_ptr":
    """RbcUtils_get_dependencies(Rbc_Manager_t * rbcManager, Rbc_t * f, boolean reset_dag) -> Slist_ptr"""
    return _rbc.RbcUtils_get_dependencies(rbcManager, f, reset_dag)

def RbcInline_apply_inlining(rbcm: 'Rbc_Manager_t *', f: 'Rbc_t *') -> "struct InlineResult_TAG *":
    """RbcInline_apply_inlining(Rbc_Manager_t * rbcm, Rbc_t * f) -> struct InlineResult_TAG *"""
    return _rbc.RbcInline_apply_inlining(rbcm, f)

def Rbc_CnfConversionAlgorithmFromStr(str: 'char const *') -> "Rbc_2CnfAlgorithm":
    """Rbc_CnfConversionAlgorithmFromStr(char const * str) -> Rbc_2CnfAlgorithm"""
    return _rbc.Rbc_CnfConversionAlgorithmFromStr(str)

def Rbc_CnfConversionAlgorithm2Str(algo: 'Rbc_2CnfAlgorithm') -> "char const *":
    """Rbc_CnfConversionAlgorithm2Str(Rbc_2CnfAlgorithm algo) -> char const *"""
    return _rbc.Rbc_CnfConversionAlgorithm2Str(algo)

def Rbc_CnfGetValidRbc2CnfAlgorithms() -> "char const *":
    """Rbc_CnfGetValidRbc2CnfAlgorithms() -> char const *"""
    return _rbc.Rbc_CnfGetValidRbc2CnfAlgorithms()

def Rbc_is_top(rbc: 'Rbc_t *') -> "boolean":
    """Rbc_is_top(Rbc_t * rbc) -> boolean"""
    return _rbc.Rbc_is_top(rbc)

def Rbc_is_var(rbc: 'Rbc_t *') -> "boolean":
    """Rbc_is_var(Rbc_t * rbc) -> boolean"""
    return _rbc.Rbc_is_var(rbc)

def Rbc_is_and(rbc: 'Rbc_t *') -> "boolean":
    """Rbc_is_and(Rbc_t * rbc) -> boolean"""
    return _rbc.Rbc_is_and(rbc)

def Rbc_is_iff(rbc: 'Rbc_t *') -> "boolean":
    """Rbc_is_iff(Rbc_t * rbc) -> boolean"""
    return _rbc.Rbc_is_iff(rbc)

def Rbc_is_ite(rbc: 'Rbc_t *') -> "boolean":
    """Rbc_is_ite(Rbc_t * rbc) -> boolean"""
    return _rbc.Rbc_is_ite(rbc)

def Rbc_Dfs_exported(dfsRoot: 'Rbc_t *', dfsFun: 'RbcDfsFunctions_t *', dfsData: 'void *', manager: 'Rbc_Manager_t *') -> "void":
    """Rbc_Dfs_exported(Rbc_t * dfsRoot, RbcDfsFunctions_t * dfsFun, void * dfsData, Rbc_Manager_t * manager)"""
    return _rbc.Rbc_Dfs_exported(dfsRoot, dfsFun, dfsData, manager)

def Rbc_Dfs_clean_exported(dfsRoot: 'Rbc_t *', manager: 'Rbc_Manager_t *') -> "void":
    """Rbc_Dfs_clean_exported(Rbc_t * dfsRoot, Rbc_Manager_t * manager)"""
    return _rbc.Rbc_Dfs_clean_exported(dfsRoot, manager)
# This file is compatible with both classic and new-style classes.


