# 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, '_ap')).lstrip('.')
        try:
            return importlib.import_module(mname)
        except ImportError:
            return importlib.import_module('_ap')
    _ap = 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('_ap', [dirname(__file__)])
        except ImportError:
            import _ap
            return _ap
        if fp is not None:
            try:
                _mod = imp.load_module('_ap', fp, pathname, description)
            finally:
                fp.close()
            return _mod
    _ap = swig_import_helper()
    del swig_import_helper
else:
    import _ap
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 = _ap.PRIuPTR
PRIdPTR = _ap.PRIdPTR
LLU = _ap.LLU
LLO = _ap.LLO
LLX = _ap.LLX
false = _ap.false
true = _ap.true
OUTCOME_GENERIC_ERROR = _ap.OUTCOME_GENERIC_ERROR
OUTCOME_PARSER_ERROR = _ap.OUTCOME_PARSER_ERROR
OUTCOME_SYNTAX_ERROR = _ap.OUTCOME_SYNTAX_ERROR
OUTCOME_FILE_ERROR = _ap.OUTCOME_FILE_ERROR
OUTCOME_SUCCESS_REQUIRED_HELP = _ap.OUTCOME_SUCCESS_REQUIRED_HELP
OUTCOME_SUCCESS = _ap.OUTCOME_SUCCESS
TOK_TRUEEXP = _ap.TOK_TRUEEXP
TOK_FALSEEXP = _ap.TOK_FALSEEXP
TOK_ATOM = _ap.TOK_ATOM
TOK_NUMBER_EXP = _ap.TOK_NUMBER_EXP
TOK_NUMBER_REAL = _ap.TOK_NUMBER_REAL
TOK_NUMBER_FRAC = _ap.TOK_NUMBER_FRAC
TOK_NUMBER = _ap.TOK_NUMBER
TOK_NUMBER_WORD = _ap.TOK_NUMBER_WORD
TOK_SEMI = _ap.TOK_SEMI
TOK_CONS = _ap.TOK_CONS
TOK_RCB = _ap.TOK_RCB
TOK_LCB = _ap.TOK_LCB
TOK_RB = _ap.TOK_RB
TOK_RP = _ap.TOK_RP
TOK_LP = _ap.TOK_LP
TOK_COLON = _ap.TOK_COLON
TOK_ESAC = _ap.TOK_ESAC
TOK_CASE = _ap.TOK_CASE
TOK_SELF = _ap.TOK_SELF
TOK_TWODOTS = _ap.TOK_TWODOTS
TOK_NOT = _ap.TOK_NOT
TOK_AND = _ap.TOK_AND
TOK_XNOR = _ap.TOK_XNOR
TOK_XOR = _ap.TOK_XOR
TOK_OR = _ap.TOK_OR
TOK_IFF = _ap.TOK_IFF
TOK_IMPLIES = _ap.TOK_IMPLIES
TOK_COMMA = _ap.TOK_COMMA
TOK_AA = _ap.TOK_AA
TOK_EE = _ap.TOK_EE
TOK_AG = _ap.TOK_AG
TOK_EG = _ap.TOK_EG
TOK_AF = _ap.TOK_AF
TOK_EF = _ap.TOK_EF
TOK_AX = _ap.TOK_AX
TOK_EX = _ap.TOK_EX
TOK_RELEASES = _ap.TOK_RELEASES
TOK_TRIGGERED = _ap.TOK_TRIGGERED
TOK_UNTIL = _ap.TOK_UNTIL
TOK_SINCE = _ap.TOK_SINCE
TOK_MMAX = _ap.TOK_MMAX
TOK_MMIN = _ap.TOK_MMIN
TOK_BUNTIL = _ap.TOK_BUNTIL
TOK_ABG = _ap.TOK_ABG
TOK_ABF = _ap.TOK_ABF
TOK_EBG = _ap.TOK_EBG
TOK_EBF = _ap.TOK_EBF
TOK_OP_FUTURE = _ap.TOK_OP_FUTURE
TOK_OP_GLOBAL = _ap.TOK_OP_GLOBAL
TOK_OP_NEXT = _ap.TOK_OP_NEXT
TOK_OP_ONCE = _ap.TOK_OP_ONCE
TOK_OP_HISTORICAL = _ap.TOK_OP_HISTORICAL
TOK_OP_NOTPRECNOT = _ap.TOK_OP_NOTPRECNOT
TOK_OP_PREC = _ap.TOK_OP_PREC
TOK_GE = _ap.TOK_GE
TOK_LE = _ap.TOK_LE
TOK_GT = _ap.TOK_GT
TOK_LT = _ap.TOK_LT
TOK_NOTEQUAL = _ap.TOK_NOTEQUAL
TOK_EQUAL = _ap.TOK_EQUAL
TOK_RROTATE = _ap.TOK_RROTATE
TOK_LROTATE = _ap.TOK_LROTATE
TOK_RSHIFT = _ap.TOK_RSHIFT
TOK_LSHIFT = _ap.TOK_LSHIFT
TOK_SETIN = _ap.TOK_SETIN
TOK_UNION = _ap.TOK_UNION
TOK_DIVIDE = _ap.TOK_DIVIDE
TOK_TIMES = _ap.TOK_TIMES
TOK_MINUS = _ap.TOK_MINUS
TOK_PLUS = _ap.TOK_PLUS
TOK_MOD = _ap.TOK_MOD
TOK_CONCATENATION = _ap.TOK_CONCATENATION
TOK_SMALLINIT = _ap.TOK_SMALLINIT
TOK_NEXT = _ap.TOK_NEXT
TOK_BIT = _ap.TOK_BIT
TOK_DOT = _ap.TOK_DOT
TOK_LB = _ap.TOK_LB
TOK_EXTEND = _ap.TOK_EXTEND
TOK_UNSIGNED = _ap.TOK_UNSIGNED
TOK_SIGNED = _ap.TOK_SIGNED
TOK_WORD1 = _ap.TOK_WORD1
TOK_BOOL = _ap.TOK_BOOL
class YYSTYPE(_object):
    """Proxy of C YYSTYPE struct."""

    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, YYSTYPE, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, YYSTYPE, name)
    __repr__ = _swig_repr
    __swig_setmethods__["node"] = _ap.YYSTYPE_node_set
    __swig_getmethods__["node"] = _ap.YYSTYPE_node_get
    if _newclass:
        node = _swig_property(_ap.YYSTYPE_node_get, _ap.YYSTYPE_node_set)

    def __init__(self):
        """__init__(YYSTYPE self) -> YYSTYPE"""
        this = _ap.new_YYSTYPE()
        try:
            self.this.append(this)
        except __builtin__.Exception:
            self.this = this
    __swig_destroy__ = _ap.delete_YYSTYPE
    __del__ = lambda self: None
YYSTYPE_swigregister = _ap.YYSTYPE_swigregister
YYSTYPE_swigregister(YYSTYPE)

YYSTYPE_IS_DECLARED = _ap.YYSTYPE_IS_DECLARED
YYSTYPE_IS_TRIVIAL = _ap.YYSTYPE_IS_TRIVIAL

def ParserAp_create() -> "ParserAp_ptr":
    """ParserAp_create() -> ParserAp_ptr"""
    return _ap.ParserAp_create()

def ParserAp_destroy(arg1: 'ParserAp_ptr') -> "void":
    """ParserAp_destroy(ParserAp_ptr arg1)"""
    return _ap.ParserAp_destroy(arg1)

def ParserAp_parse_from_file(arg1: 'ParserAp_ptr', f: 'FILE *') -> "void":
    """ParserAp_parse_from_file(ParserAp_ptr arg1, FILE * f)"""
    return _ap.ParserAp_parse_from_file(arg1, f)

def ParserAp_parse_from_string(arg1: 'ParserAp_ptr', str: 'char const *') -> "void":
    """ParserAp_parse_from_string(ParserAp_ptr arg1, char const * str)"""
    return _ap.ParserAp_parse_from_string(arg1, str)

def ParserAp_get_ap_list(arg1: 'ParserAp_ptr const') -> "NodeList_ptr":
    """ParserAp_get_ap_list(ParserAp_ptr const arg1) -> NodeList_ptr"""
    return _ap.ParserAp_get_ap_list(arg1)

def ParserAp_reset(arg1: 'ParserAp_ptr') -> "void":
    """ParserAp_reset(ParserAp_ptr arg1)"""
    return _ap.ParserAp_reset(arg1)
# This file is compatible with both classic and new-style classes.

cvar = _ap.cvar

