Things were compiling well because everything goes into the same namespace.
# Copyright (C) 2020 The Psycopg Team
+from psycopg3.pq.misc import ConninfoOption
+
class Conninfo:
@classmethod
def __repr__(self):
return f"<{type(self).__name__} ({self.keyword.decode('ascii')})>"
+
+
+cdef _options_from_array(impl.PQconninfoOption *opts):
+ rv = []
+ cdef int i = 0
+ cdef impl.PQconninfoOption* opt
+ while 1:
+ opt = opts + i
+ if opt.keyword is NULL:
+ break
+ rv.append(
+ ConninfoOption(
+ keyword=opt.keyword,
+ envvar=opt.envvar if opt.envvar is not NULL else None,
+ compiled=opt.compiled if opt.compiled is not NULL else None,
+ val=opt.val if opt.val is not NULL else None,
+ label=opt.label if opt.label is not NULL else None,
+ dispchar=opt.dispchar if opt.dispchar is not NULL else None,
+ dispsize=opt.dispsize,
+ )
+ )
+ i += 1
+
+ return rv
# Copyright (C) 2020 The Psycopg Team
+from libc.string cimport strlen
+from cpython.bytearray cimport PyByteArray_FromStringAndSize, PyByteArray_Resize
+from cpython.bytearray cimport PyByteArray_AS_STRING
+
cdef class Escaping:
def __init__(self, PGconn conn = None):
# Copyright (C) 2020 The Psycopg Team
+from posix.unistd cimport getpid
+from cpython.mem cimport PyMem_Malloc, PyMem_Free
+from cpython.bytes cimport PyBytes_AsString
+
+import logging
+
+from psycopg3_c.pq.libpq cimport Oid
+from psycopg3.pq.misc import PGnotify
+
+logger = logging.getLogger('psycopg3')
+
cdef class PGconn:
@staticmethod
PyMem_Free(<char **>cvalues)
PyMem_Free(clenghts)
PyMem_Free(cformats)
-
-
-cdef _options_from_array(impl.PQconninfoOption *opts):
- rv = []
- cdef int i = 0
- cdef impl.PQconninfoOption* opt
- while 1:
- opt = opts + i
- if opt.keyword is NULL:
- break
- rv.append(
- ConninfoOption(
- keyword=opt.keyword,
- envvar=opt.envvar if opt.envvar is not NULL else None,
- compiled=opt.compiled if opt.compiled is not NULL else None,
- val=opt.val if opt.val is not NULL else None,
- label=opt.label if opt.label is not NULL else None,
- dispchar=opt.dispchar if opt.dispchar is not NULL else None,
- dispsize=opt.dispsize,
- )
- )
- i += 1
-
- return rv
# Copyright (C) 2020 The Psycopg Team
+from cpython.mem cimport PyMem_Malloc, PyMem_Free
+
+from psycopg3.pq.misc import PGresAttDesc
+
cdef class PGresult:
def __cinit__(self):
# Copyright (C) 2020 The Psycopg Team
+from cpython.bytes cimport PyBytes_AsStringAndSize
+from cpython.buffer cimport PyObject_CheckBuffer, PyBUF_SIMPLE
+from cpython.buffer cimport PyObject_GetBuffer, PyBuffer_Release
+
cdef class PQBuffer:
"""
# Copyright (C) 2020 The Psycopg Team
-from libc.string cimport strlen
-from posix.unistd cimport getpid
-from cpython.mem cimport PyMem_Malloc, PyMem_Free
-from cpython.bytes cimport PyBytes_AsString, PyBytes_AsStringAndSize
-from cpython.buffer cimport PyObject_CheckBuffer, PyBUF_SIMPLE
-from cpython.buffer cimport PyObject_GetBuffer, PyBuffer_Release
-from cpython.bytearray cimport PyByteArray_FromStringAndSize, PyByteArray_Resize
-from cpython.bytearray cimport PyByteArray_AS_STRING
-
-import logging
-from typing import List, Optional, Sequence, Tuple
-
-from psycopg3_c.pq cimport libpq as impl
-from psycopg3_c.pq.libpq cimport Oid
-
-from psycopg3.pq.misc import PGnotify, ConninfoOption, PQerror, PGresAttDesc
-from psycopg3.pq.misc import error_message
-from psycopg3.pq import (
- ConnStatus,
- PollingStatus,
- ExecStatus,
- TransactionStatus,
- Ping,
- DiagnosticField,
- Format,
-)
+from psycopg3_c.pq cimport libpq
+from psycopg3.pq.misc import PQerror, error_message
+
+from psycopg3.pq import ConnStatus, PollingStatus, ExecStatus
+from psycopg3.pq import TransactionStatus, Ping, DiagnosticField, Format
-__impl__ = 'c'
-logger = logging.getLogger('psycopg3')
+__impl__ = 'c'
def version():
- return impl.PQlibVersion()
+ return libpq.PQlibVersion()
include "pq/pgconn.pyx"