# This file was automatically generated by SWIG (http://www.swig.org).
# Version 2.0.9
#
# 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
if 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('_pydjondb', [dirname(__file__)])
        except ImportError:
            import _pydjondb
            return _pydjondb
        if fp is not None:
            try:
                _mod = imp.load_module('_pydjondb', fp, pathname, description)
            finally:
                fp.close()
            return _mod
    _pydjondb = swig_import_helper()
    del swig_import_helper
else:
    import _pydjondb
del version_info
try:
    _swig_property = property
except NameError:
    pass # Python < 2.2 doesn't have 'property'.
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):
        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(name)

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

try:
    _object = object
    _newclass = 1
except AttributeError:
    class _object : pass
    _newclass = 0


class SwigPyIterator(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SwigPyIterator, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SwigPyIterator, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _pydjondb.delete_SwigPyIterator
    __del__ = lambda self : None;
    def value(self): return _pydjondb.SwigPyIterator_value(self)
    def incr(self, n=1): return _pydjondb.SwigPyIterator_incr(self, n)
    def decr(self, n=1): return _pydjondb.SwigPyIterator_decr(self, n)
    def distance(self, *args): return _pydjondb.SwigPyIterator_distance(self, *args)
    def equal(self, *args): return _pydjondb.SwigPyIterator_equal(self, *args)
    def copy(self): return _pydjondb.SwigPyIterator_copy(self)
    def next(self): return _pydjondb.SwigPyIterator_next(self)
    def __next__(self): return _pydjondb.SwigPyIterator___next__(self)
    def previous(self): return _pydjondb.SwigPyIterator_previous(self)
    def advance(self, *args): return _pydjondb.SwigPyIterator_advance(self, *args)
    def __eq__(self, *args): return _pydjondb.SwigPyIterator___eq__(self, *args)
    def __ne__(self, *args): return _pydjondb.SwigPyIterator___ne__(self, *args)
    def __iadd__(self, *args): return _pydjondb.SwigPyIterator___iadd__(self, *args)
    def __isub__(self, *args): return _pydjondb.SwigPyIterator___isub__(self, *args)
    def __add__(self, *args): return _pydjondb.SwigPyIterator___add__(self, *args)
    def __sub__(self, *args): return _pydjondb.SwigPyIterator___sub__(self, *args)
    def __iter__(self): return self
SwigPyIterator_swigregister = _pydjondb.SwigPyIterator_swigregister
SwigPyIterator_swigregister(SwigPyIterator)

class BSONObjVectorPtr(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, BSONObjVectorPtr, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, BSONObjVectorPtr, name)
    __repr__ = _swig_repr
    def iterator(self): return _pydjondb.BSONObjVectorPtr_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pydjondb.BSONObjVectorPtr___nonzero__(self)
    def __bool__(self): return _pydjondb.BSONObjVectorPtr___bool__(self)
    def __len__(self): return _pydjondb.BSONObjVectorPtr___len__(self)
    def pop(self): return _pydjondb.BSONObjVectorPtr_pop(self)
    def __getslice__(self, *args): return _pydjondb.BSONObjVectorPtr___getslice__(self, *args)
    def __setslice__(self, *args): return _pydjondb.BSONObjVectorPtr___setslice__(self, *args)
    def __delslice__(self, *args): return _pydjondb.BSONObjVectorPtr___delslice__(self, *args)
    def __delitem__(self, *args): return _pydjondb.BSONObjVectorPtr___delitem__(self, *args)
    def __getitem__(self, *args): return _pydjondb.BSONObjVectorPtr___getitem__(self, *args)
    def __setitem__(self, *args): return _pydjondb.BSONObjVectorPtr___setitem__(self, *args)
    def append(self, *args): return _pydjondb.BSONObjVectorPtr_append(self, *args)
    def empty(self): return _pydjondb.BSONObjVectorPtr_empty(self)
    def size(self): return _pydjondb.BSONObjVectorPtr_size(self)
    def clear(self): return _pydjondb.BSONObjVectorPtr_clear(self)
    def swap(self, *args): return _pydjondb.BSONObjVectorPtr_swap(self, *args)
    def get_allocator(self): return _pydjondb.BSONObjVectorPtr_get_allocator(self)
    def begin(self): return _pydjondb.BSONObjVectorPtr_begin(self)
    def end(self): return _pydjondb.BSONObjVectorPtr_end(self)
    def rbegin(self): return _pydjondb.BSONObjVectorPtr_rbegin(self)
    def rend(self): return _pydjondb.BSONObjVectorPtr_rend(self)
    def pop_back(self): return _pydjondb.BSONObjVectorPtr_pop_back(self)
    def erase(self, *args): return _pydjondb.BSONObjVectorPtr_erase(self, *args)
    def __init__(self, *args): 
        this = _pydjondb.new_BSONObjVectorPtr(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pydjondb.BSONObjVectorPtr_push_back(self, *args)
    def front(self): return _pydjondb.BSONObjVectorPtr_front(self)
    def back(self): return _pydjondb.BSONObjVectorPtr_back(self)
    def assign(self, *args): return _pydjondb.BSONObjVectorPtr_assign(self, *args)
    def resize(self, *args): return _pydjondb.BSONObjVectorPtr_resize(self, *args)
    def insert(self, *args): return _pydjondb.BSONObjVectorPtr_insert(self, *args)
    def reserve(self, *args): return _pydjondb.BSONObjVectorPtr_reserve(self, *args)
    def capacity(self): return _pydjondb.BSONObjVectorPtr_capacity(self)
    __swig_destroy__ = _pydjondb.delete_BSONObjVectorPtr
    __del__ = lambda self : None;
BSONObjVectorPtr_swigregister = _pydjondb.BSONObjVectorPtr_swigregister
BSONObjVectorPtr_swigregister(BSONObjVectorPtr)

class StringVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, StringVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, StringVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pydjondb.StringVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pydjondb.StringVector___nonzero__(self)
    def __bool__(self): return _pydjondb.StringVector___bool__(self)
    def __len__(self): return _pydjondb.StringVector___len__(self)
    def pop(self): return _pydjondb.StringVector_pop(self)
    def __getslice__(self, *args): return _pydjondb.StringVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pydjondb.StringVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pydjondb.StringVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pydjondb.StringVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pydjondb.StringVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pydjondb.StringVector___setitem__(self, *args)
    def append(self, *args): return _pydjondb.StringVector_append(self, *args)
    def empty(self): return _pydjondb.StringVector_empty(self)
    def size(self): return _pydjondb.StringVector_size(self)
    def clear(self): return _pydjondb.StringVector_clear(self)
    def swap(self, *args): return _pydjondb.StringVector_swap(self, *args)
    def get_allocator(self): return _pydjondb.StringVector_get_allocator(self)
    def begin(self): return _pydjondb.StringVector_begin(self)
    def end(self): return _pydjondb.StringVector_end(self)
    def rbegin(self): return _pydjondb.StringVector_rbegin(self)
    def rend(self): return _pydjondb.StringVector_rend(self)
    def pop_back(self): return _pydjondb.StringVector_pop_back(self)
    def erase(self, *args): return _pydjondb.StringVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pydjondb.new_StringVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pydjondb.StringVector_push_back(self, *args)
    def front(self): return _pydjondb.StringVector_front(self)
    def back(self): return _pydjondb.StringVector_back(self)
    def assign(self, *args): return _pydjondb.StringVector_assign(self, *args)
    def resize(self, *args): return _pydjondb.StringVector_resize(self, *args)
    def insert(self, *args): return _pydjondb.StringVector_insert(self, *args)
    def reserve(self, *args): return _pydjondb.StringVector_reserve(self, *args)
    def capacity(self): return _pydjondb.StringVector_capacity(self)
    __swig_destroy__ = _pydjondb.delete_StringVector
    __del__ = lambda self : None;
StringVector_swigregister = _pydjondb.StringVector_swigregister
StringVector_swigregister(StringVector)

class BSONArrayObj(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, BSONArrayObj, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, BSONArrayObj, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _pydjondb.delete_BSONArrayObj
    __del__ = lambda self : None;
    def __init__(self, *args): 
        this = _pydjondb.new_BSONArrayObj(*args)
        try: self.this.append(this)
        except: self.this = this
    def length(self): return _pydjondb.BSONArrayObj_length(self)
    def add(self, *args): return _pydjondb.BSONArrayObj_add(self, *args)
    def get(self, *args): return _pydjondb.BSONArrayObj_get(self, *args)
    def toChar(self): return _pydjondb.BSONArrayObj_toChar(self)
    def select(self, *args): return _pydjondb.BSONArrayObj_select(self, *args)
    def begin(self): return _pydjondb.BSONArrayObj_begin(self)
    def end(self): return _pydjondb.BSONArrayObj_end(self)
BSONArrayObj_swigregister = _pydjondb.BSONArrayObj_swigregister
BSONArrayObj_swigregister(BSONArrayObj)

class BSONObj(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, BSONObj, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, BSONObj, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pydjondb.new_BSONObj(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pydjondb.delete_BSONObj
    __del__ = lambda self : None;
    def add(self, *args): return _pydjondb.BSONObj_add(self, *args)
    def has(self, *args): return _pydjondb.BSONObj_has(self, *args)
    def getInt(self, *args): return _pydjondb.BSONObj_getInt(self, *args)
    def getDouble(self, *args): return _pydjondb.BSONObj_getDouble(self, *args)
    def getLong(self, *args): return _pydjondb.BSONObj_getLong(self, *args)
    def getString(self, *args): return _pydjondb.BSONObj_getString(self, *args)
    def getBSON(self, *args): return _pydjondb.BSONObj_getBSON(self, *args)
    def getBSONArray(self, *args): return _pydjondb.BSONObj_getBSONArray(self, *args)
    def get(self, *args): return _pydjondb.BSONObj_get(self, *args)
    def getContent(self, *args): return _pydjondb.BSONObj_getContent(self, *args)
    def getXpath(self, *args): return _pydjondb.BSONObj_getXpath(self, *args)
    def select(self, *args): return _pydjondb.BSONObj_select(self, *args)
    def type(self, *args): return _pydjondb.BSONObj_type(self, *args)
    def toChar(self): return _pydjondb.BSONObj_toChar(self)
    def begin(self): return _pydjondb.BSONObj_begin(self)
    def end(self): return _pydjondb.BSONObj_end(self)
    def length(self): return _pydjondb.BSONObj_length(self)
    def __eq__(self, *args): return _pydjondb.BSONObj___eq__(self, *args)
    def __ne__(self, *args): return _pydjondb.BSONObj___ne__(self, *args)
BSONObj_swigregister = _pydjondb.BSONObj_swigregister
BSONObj_swigregister(BSONObj)

class BSONParser(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, BSONParser, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, BSONParser, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pydjondb.new_BSONParser()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pydjondb.delete_BSONParser
    __del__ = lambda self : None;
    __swig_getmethods__["parse"] = lambda x: _pydjondb.BSONParser_parse
    if _newclass:parse = staticmethod(_pydjondb.BSONParser_parse)
    __swig_getmethods__["parseArray"] = lambda x: _pydjondb.BSONParser_parseArray
    if _newclass:parseArray = staticmethod(_pydjondb.BSONParser_parseArray)
BSONParser_swigregister = _pydjondb.BSONParser_swigregister
BSONParser_swigregister(BSONParser)

def BSONParser_parse(*args):
  return _pydjondb.BSONParser_parse(*args)
BSONParser_parse = _pydjondb.BSONParser_parse

def BSONParser_parseArray(*args):
  return _pydjondb.BSONParser_parseArray(*args)
BSONParser_parseArray = _pydjondb.BSONParser_parseArray

FO_NONE = _pydjondb.FO_NONE
FO_TOKEN = _pydjondb.FO_TOKEN
FO_AND = _pydjondb.FO_AND
FO_OR = _pydjondb.FO_OR
FO_EQUALS = _pydjondb.FO_EQUALS
FO_NOT_EQUALS = _pydjondb.FO_NOT_EQUALS
FO_PARENTESIS_OPEN = _pydjondb.FO_PARENTESIS_OPEN
FO_PARENTESIS_CLOSE = _pydjondb.FO_PARENTESIS_CLOSE
FO_NOT = _pydjondb.FO_NOT
FO_LESSTHAN = _pydjondb.FO_LESSTHAN
FO_LESSEQUALTHAN = _pydjondb.FO_LESSEQUALTHAN
FO_GREATERTHAN = _pydjondb.FO_GREATERTHAN
FO_GREATEREQUALTHAN = _pydjondb.FO_GREATEREQUALTHAN
ET_CONSTANT = _pydjondb.ET_CONSTANT
ET_SIMPLE = _pydjondb.ET_SIMPLE
ET_BINARY = _pydjondb.ET_BINARY
ET_UNARY = _pydjondb.ET_UNARY

def parseFilterOperator(*args):
  return _pydjondb.parseFilterOperator(*args)
parseFilterOperator = _pydjondb.parseFilterOperator
class ParseException(Exception):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ParseException, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ParseException, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pydjondb.new_ParseException(*args)
        try: self.this.append(this)
        except: self.this = this
    def what(self): return _pydjondb.ParseException_what(self)
    def errorCode(self): return _pydjondb.ParseException_errorCode(self)
    __swig_destroy__ = _pydjondb.delete_ParseException
    __del__ = lambda self : None;
ParseException_swigregister = _pydjondb.ParseException_swigregister
ParseException_swigregister(ParseException)


def bson_splitSelect(*args):
  return _pydjondb.bson_splitSelect(*args)
bson_splitSelect = _pydjondb.bson_splitSelect

def bson_subselect(*args):
  return _pydjondb.bson_subselect(*args)
bson_subselect = _pydjondb.bson_subselect
SERVER_PORT = _pydjondb.SERVER_PORT
class DjondbConnection(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DjondbConnection, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DjondbConnection, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pydjondb.new_DjondbConnection(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pydjondb.delete_DjondbConnection
    __del__ = lambda self : None;
    def open(self): return _pydjondb.DjondbConnection_open(self)
    def close(self): return _pydjondb.DjondbConnection_close(self)
    def internalClose(self): return _pydjondb.DjondbConnection_internalClose(self)
    def isOpen(self): return _pydjondb.DjondbConnection_isOpen(self)
    def shutdown(self): return _pydjondb.DjondbConnection_shutdown(self)
    def insert(self, *args): return _pydjondb.DjondbConnection_insert(self, *args)
    def findByKey(self, *args): return _pydjondb.DjondbConnection_findByKey(self, *args)
    def find(self, *args): return _pydjondb.DjondbConnection_find(self, *args)
    def update(self, *args): return _pydjondb.DjondbConnection_update(self, *args)
    def remove(self, *args): return _pydjondb.DjondbConnection_remove(self, *args)
    def dropNamespace(self, *args): return _pydjondb.DjondbConnection_dropNamespace(self, *args)
    def dbs(self): return _pydjondb.DjondbConnection_dbs(self)
    def namespaces(self, *args): return _pydjondb.DjondbConnection_namespaces(self, *args)
    def host(self): return _pydjondb.DjondbConnection_host(self)
DjondbConnection_swigregister = _pydjondb.DjondbConnection_swigregister
DjondbConnection_swigregister(DjondbConnection)

class ConnectionReference(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ConnectionReference, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ConnectionReference, name)
    __repr__ = _swig_repr
    __swig_setmethods__["_connection"] = _pydjondb.ConnectionReference__connection_set
    __swig_getmethods__["_connection"] = _pydjondb.ConnectionReference__connection_get
    if _newclass:_connection = _swig_property(_pydjondb.ConnectionReference__connection_get, _pydjondb.ConnectionReference__connection_set)
    __swig_setmethods__["_references"] = _pydjondb.ConnectionReference__references_set
    __swig_getmethods__["_references"] = _pydjondb.ConnectionReference__references_get
    if _newclass:_references = _swig_property(_pydjondb.ConnectionReference__references_get, _pydjondb.ConnectionReference__references_set)
    def __init__(self): 
        this = _pydjondb.new_ConnectionReference()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pydjondb.delete_ConnectionReference
    __del__ = lambda self : None;
ConnectionReference_swigregister = _pydjondb.ConnectionReference_swigregister
ConnectionReference_swigregister(ConnectionReference)

class DjondbConnectionManager(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DjondbConnectionManager, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DjondbConnectionManager, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pydjondb.new_DjondbConnectionManager()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pydjondb.delete_DjondbConnectionManager
    __del__ = lambda self : None;
    __swig_getmethods__["getConnection"] = lambda x: _pydjondb.DjondbConnectionManager_getConnection
    if _newclass:getConnection = staticmethod(_pydjondb.DjondbConnectionManager_getConnection)
    __swig_getmethods__["releaseConnection"] = lambda x: _pydjondb.DjondbConnectionManager_releaseConnection
    if _newclass:releaseConnection = staticmethod(_pydjondb.DjondbConnectionManager_releaseConnection)
DjondbConnectionManager_swigregister = _pydjondb.DjondbConnectionManager_swigregister
DjondbConnectionManager_swigregister(DjondbConnectionManager)

def DjondbConnectionManager_getConnection(*args):
  return _pydjondb.DjondbConnectionManager_getConnection(*args)
DjondbConnectionManager_getConnection = _pydjondb.DjondbConnectionManager_getConnection

def DjondbConnectionManager_releaseConnection(*args):
  return _pydjondb.DjondbConnectionManager_releaseConnection(*args)
DjondbConnectionManager_releaseConnection = _pydjondb.DjondbConnectionManager_releaseConnection

# This file is compatible with both classic and new-style classes.


