Spec-Zone.ru › Nim 1

postgres

Типы

POid = ptr Oid
Исходный код Редактировать
Oid = int32
Исходный код Редактировать
SockAddr = array[1 .. 112, int8]
Исходный код Редактировать
PGresAttDesc {...}{.pure, final.} = object
  name*: cstring
  adtid*: Oid
  adtsize*: int
Исходный код Редактировать
PPGresAttDesc = ptr PGresAttDesc
Исходный код Редактировать
PPPGresAttDesc = ptr PPGresAttDesc
Исходный код Редактировать
PGresAttValue {...}{.pure, final.} = object
  length*: int32
  value*: cstring
Исходный код Редактировать
PPGresAttValue = ptr PGresAttValue
Исходный код Редактировать
PPPGresAttValue = ptr PPGresAttValue
Исходный код Редактировать
PExecStatusType = ptr ExecStatusType
Исходный код Редактировать
ExecStatusType = enum
  PGRES_EMPTY_QUERY = 0, PGRES_COMMAND_OK, PGRES_TUPLES_OK, PGRES_COPY_OUT,
  PGRES_COPY_IN, PGRES_BAD_RESPONSE, PGRES_NONFATAL_ERROR, PGRES_FATAL_ERROR
Исходный код Редактировать
PGlobjfuncs {...}{.pure, final.} = object
  fn_lo_open*: Oid
  fn_lo_close*: Oid
  fn_lo_creat*: Oid
  fn_lo_unlink*: Oid
  fn_lo_lseek*: Oid
  fn_lo_tell*: Oid
  fn_lo_read*: Oid
  fn_lo_write*: Oid
Исходный код Редактировать
PPGlobjfuncs = ptr PGlobjfuncs
Исходный код Редактировать
PConnStatusType = ptr ConnStatusType
Исходный код Редактировать
ConnStatusType = enum
  CONNECTION_OK, CONNECTION_BAD, CONNECTION_STARTED, CONNECTION_MADE,
  CONNECTION_AWAITING_RESPONSE, CONNECTION_AUTH_OK, CONNECTION_SETENV,
  CONNECTION_SSL_STARTUP, CONNECTION_NEEDED
Исходный код Редактировать
PGconn {...}{.pure, final.} = object
  pghost*: cstring
  pgtty*: cstring
  pgport*: cstring
  pgoptions*: cstring
  dbName*: cstring
  status*: ConnStatusType
  errorMessage*: array[0 .. 4096 - 1, char]
  Pfin*: File
  Pfout*: File
  Pfdebug*: File
  sock*: int32
  laddr*: SockAddr
  raddr*: SockAddr
  salt*: array[0 .. 2 - 1, char]
  asyncNotifyWaiting*: int32
  notifyList*: pointer
  pguser*: cstring
  pgpass*: cstring
  lobjfuncs*: PPGlobjfuncs
Исходный код Редактировать
PPGconn = ptr PGconn
Исходный код Редактировать
PGresult {...}{.pure, final.} = object
  ntups*: int32
  numAttributes*: int32
  attDescs*: PPGresAttDesc
  tuples*: PPPGresAttValue
  tupArrSize*: int32
  resultStatus*: ExecStatusType
  cmdStatus*: array[0 .. 40 - 1, char]
  binary*: int32
  conn*: PPGconn
Исходный код Редактировать
PPGresult = ptr PGresult
Исходный код Редактировать
PPostgresPollingStatusType = ptr PostgresPollingStatusType
Исходный код Редактировать
PostgresPollingStatusType = enum
  PGRES_POLLING_FAILED = 0, PGRES_POLLING_READING, PGRES_POLLING_WRITING,
  PGRES_POLLING_OK, PGRES_POLLING_ACTIVE
Исходный код Редактировать
PPGTransactionStatusType = ptr PGTransactionStatusType
Исходный код Редактировать
PGTransactionStatusType = enum
  PQTRANS_IDLE, PQTRANS_ACTIVE, PQTRANS_INTRANS, PQTRANS_INERROR,
  PQTRANS_UNKNOWN
Исходный код Редактировать
PPGVerbosity = ptr PGVerbosity
Исходный код Редактировать
PGVerbosity = enum
  PQERRORS_TERSE, PQERRORS_DEFAULT, PQERRORS_VERBOSE
Исходный код Редактировать
PPGNotify = ptr pgNotify
Исходный код Редактировать
pgNotify {...}{.pure, final.} = object
  relname*: cstring
  be_pid*: int32
  extra*: cstring
Исходный код Редактировать
PQnoticeReceiver = proc (arg: pointer; res: PPGresult) {...}{.cdecl.}
Исходный код Редактировать
PQnoticeProcessor = proc (arg: pointer; message: cstring) {...}{.cdecl.}
Исходный код Редактировать
Ppqbool = ptr pqbool
Исходный код Редактировать
pqbool = char
Исходный код Редактировать
PPQprintOpt = ptr PQprintOpt
Исходный код Редактировать
PQprintOpt {...}{.pure, final.} = object
  header*: pqbool
  align*: pqbool
  standard*: pqbool
  html3*: pqbool
  expanded*: pqbool
  pager*: pqbool
  fieldSep*: cstring
  tableOpt*: cstring
  caption*: cstring
  fieldName*: ptr cstring
Исходный код Редактировать
PPQconninfoOption = ptr PQconninfoOption
Исходный код Редактировать
PQconninfoOption {...}{.pure, final.} = object
  keyword*: cstring
  envvar*: cstring
  compiled*: cstring
  val*: cstring
  label*: cstring
  dispchar*: cstring
  dispsize*: int32
Исходный код Редактировать
PPQArgBlock = ptr PQArgBlock
Исходный код Редактировать
PQArgBlock {...}{.pure, final.} = object
  length*: int32
  isint*: int32
  p*: pointer
Исходный код Редактировать

Константы

ERROR_MSG_LENGTH = 4096
Исходный код Редактировать
CMDSTATUS_LEN = 40
Исходный код Редактировать

Процедуры

proc pqinitOpenSSL(do_ssl: int32; do_crypto: int32) {...}{.cdecl, dynlib: dllName,
    importc: "PQinitOpenSSL".}
Исходный код Редактировать
proc pqconnectStart(conninfo: cstring): PPGconn {...}{.cdecl, dynlib: dllName,
    importc: "PQconnectStart".}
Исходный код Редактировать
proc pqconnectPoll(conn: PPGconn): PostgresPollingStatusType {...}{.cdecl,
    dynlib: dllName, importc: "PQconnectPoll".}
Исходный код Редактировать
proc pqconnectdb(conninfo: cstring): PPGconn {...}{.cdecl, dynlib: dllName,
    importc: "PQconnectdb".}
Исходный код Редактировать
proc pqsetdbLogin(pghost: cstring; pgport: cstring; pgoptions: cstring;
                  pgtty: cstring; dbName: cstring; login: cstring; pwd: cstring): PPGconn {...}{.
    cdecl, dynlib: dllName, importc: "PQsetdbLogin".}
Исходный код Редактировать
proc pqfinish(conn: PPGconn) {...}{.cdecl, dynlib: dllName, importc: "PQfinish".}
Исходный код Редактировать
proc pqconndefaults(): PPQconninfoOption {...}{.cdecl, dynlib: dllName,
    importc: "PQconndefaults".}
Исходный код Редактировать
proc pqconninfoFree(connOptions: PPQconninfoOption) {...}{.cdecl, dynlib: dllName,
    importc: "PQconninfoFree".}
Исходный код Редактировать
proc pqresetStart(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQresetStart".}
Исходный код Редактировать
proc pqresetPoll(conn: PPGconn): PostgresPollingStatusType {...}{.cdecl,
    dynlib: dllName, importc: "PQresetPoll".}
Исходный код Редактировать
proc pqreset(conn: PPGconn) {...}{.cdecl, dynlib: dllName, importc: "PQreset".}
Исходный код Редактировать
proc pqrequestCancel(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQrequestCancel".}
Исходный код Редактировать
proc pqdb(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQdb".}
Исходный код Редактировать
proc pquser(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQuser".}
Исходный код Редактировать
proc pqpass(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQpass".}
Исходный код Редактировать
proc pqhost(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQhost".}
Исходный код Редактировать
proc pqport(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQport".}
Исходный код Редактировать
proc pqtty(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName, importc: "PQtty".}
Исходный код Редактировать
proc pqoptions(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQoptions".}
Исходный код Редактировать
proc pqstatus(conn: PPGconn): ConnStatusType {...}{.cdecl, dynlib: dllName,
    importc: "PQstatus".}
Исходный код Редактировать
proc pqtransactionStatus(conn: PPGconn): PGTransactionStatusType {...}{.cdecl,
    dynlib: dllName, importc: "PQtransactionStatus".}
Исходный код Редактировать
proc pqparameterStatus(conn: PPGconn; paramName: cstring): cstring {...}{.cdecl,
    dynlib: dllName, importc: "PQparameterStatus".}
Исходный код Редактировать
proc pqserverVersion(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQserverVersion".}
Исходный код Редактировать
proc pqprotocolVersion(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQprotocolVersion".}
Исходный код Редактировать
proc pqerrorMessage(conn: PPGconn): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQerrorMessage".}
Исходный код Редактировать
proc pqsocket(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
                                      importc: "PQsocket".}
Исходный код Редактировать
proc pqbackendPID(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQbackendPID".}
Исходный код Редактировать
proc pqconnectionNeedsPassword(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQconnectionNeedsPassword".}
Исходный код Редактировать
proc pqconnectionUsedPassword(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQconnectionUsedPassword".}
Исходный код Редактировать
proc pqclientEncoding(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQclientEncoding".}
Исходный код Редактировать
proc pqsetClientEncoding(conn: PPGconn; encoding: cstring): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQsetClientEncoding".}
Исходный код Редактировать
proc pqsetErrorVerbosity(conn: PPGconn; verbosity: PGVerbosity): PGVerbosity {...}{.
    cdecl, dynlib: dllName, importc: "PQsetErrorVerbosity".}
Исходный код Редактировать
proc pqtrace(conn: PPGconn; debug_port: File) {...}{.cdecl, dynlib: dllName,
    importc: "PQtrace".}
Исходный код Редактировать
proc pquntrace(conn: PPGconn) {...}{.cdecl, dynlib: dllName, importc: "PQuntrace".}
Исходный код Редактировать
proc pqsetNoticeReceiver(conn: PPGconn; theProc: PQnoticeReceiver; arg: pointer): PQnoticeReceiver {...}{.
    cdecl, dynlib: dllName, importc: "PQsetNoticeReceiver".}
Исходный код Редактировать
proc pqsetNoticeProcessor(conn: PPGconn; theProc: PQnoticeProcessor;
                          arg: pointer): PQnoticeProcessor {...}{.cdecl,
    dynlib: dllName, importc: "PQsetNoticeProcessor".}
Исходный код Редактировать
proc pqexec(conn: PPGconn; query: cstring): PPGresult {...}{.cdecl, dynlib: dllName,
    importc: "PQexec".}
Исходный код Редактировать
proc pqexecParams(conn: PPGconn; command: cstring; nParams: int32;
                  paramTypes: POid; paramValues: cstringArray;
                  paramLengths, paramFormats: ptr int32; resultFormat: int32): PPGresult {...}{.
    cdecl, dynlib: dllName, importc: "PQexecParams".}
Исходный код Редактировать
proc pqprepare(conn: PPGconn; stmtName, query: cstring; nParams: int32;
               paramTypes: POid): PPGresult {...}{.cdecl, dynlib: dllName,
    importc: "PQprepare".}
Исходный код Редактировать
proc pqexecPrepared(conn: PPGconn; stmtName: cstring; nParams: int32;
                    paramValues: cstringArray;
                    paramLengths, paramFormats: ptr int32; resultFormat: int32): PPGresult {...}{.
    cdecl, dynlib: dllName, importc: "PQexecPrepared".}
Исходный код Редактировать
proc pqsendQuery(conn: PPGconn; query: cstring): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQsendQuery".}
Исходный код Редактировать
proc pqsendQueryParams(conn: PPGconn; command: cstring; nParams: int32;
                       paramTypes: POid; paramValues: cstringArray;
                       paramLengths, paramFormats: ptr int32;
                       resultFormat: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQsendQueryParams".}
Исходный код Редактировать
proc pqsendQueryPrepared(conn: PPGconn; stmtName: cstring; nParams: int32;
                         paramValues: cstringArray;
                         paramLengths, paramFormats: ptr int32;
                         resultFormat: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQsendQueryPrepared".}
Исходный код Редактировать
proc pqgetResult(conn: PPGconn): PPGresult {...}{.cdecl, dynlib: dllName,
    importc: "PQgetResult".}
Исходный код Редактировать
END_OF_DOCUMENT_MARKER
proc pqisBusy(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
                                      importc: "PQisBusy".}
Исходный код Изменить
proc pqconsumeInput(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQconsumeInput".}
Исходный код Изменить
proc pqnotifies(conn: PPGconn): PPGNotify {...}{.cdecl, dynlib: dllName,
    importc: "PQnotifies".}
Исходный код Изменить
proc pqputCopyData(conn: PPGconn; buffer: cstring; nbytes: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "PQputCopyData".}
Исходный код Изменить
proc pqputCopyEnd(conn: PPGconn; errormsg: cstring): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQputCopyEnd".}
Исходный код Изменить
proc pqgetCopyData(conn: PPGconn; buffer: cstringArray; async: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "PQgetCopyData".}
Исходный код Изменить
proc pqgetline(conn: PPGconn; str: cstring; len: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQgetline".}
Исходный код Изменить
proc pqputline(conn: PPGconn; str: cstring): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQputline".}
Исходный код Изменить
proc pqgetlineAsync(conn: PPGconn; buffer: cstring; bufsize: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "PQgetlineAsync".}
Исходный код Изменить
proc pqputnbytes(conn: PPGconn; buffer: cstring; nbytes: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQputnbytes".}
Исходный код Изменить
proc pqendcopy(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
                                       importc: "PQendcopy".}
Исходный код Изменить
proc pqsetnonblocking(conn: PPGconn; arg: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQsetnonblocking".}
Исходный код Изменить
proc pqisnonblocking(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQisnonblocking".}
Исходный код Изменить
proc pqflush(conn: PPGconn): int32 {...}{.cdecl, dynlib: dllName, importc: "PQflush".}
Исходный код Изменить
proc pqfn(conn: PPGconn; fnid: int32; result_buf, result_len: ptr int32;
          result_is_int: int32; args: PPQArgBlock; nargs: int32): PPGresult {...}{.
    cdecl, dynlib: dllName, importc: "PQfn".}
Исходный код Изменить
proc pqresultStatus(res: PPGresult): ExecStatusType {...}{.cdecl, dynlib: dllName,
    importc: "PQresultStatus".}
Исходный код Изменить
proc pqresStatus(status: ExecStatusType): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQresStatus".}
Исходный код Изменить
proc pqresultErrorMessage(res: PPGresult): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQresultErrorMessage".}
Исходный код Изменить
proc pqresultErrorField(res: PPGresult; fieldcode: int32): cstring {...}{.cdecl,
    dynlib: dllName, importc: "PQresultErrorField".}
Исходный код Изменить
proc pqntuples(res: PPGresult): int32 {...}{.cdecl, dynlib: dllName,
                                        importc: "PQntuples".}
Исходный код Изменить
proc pqnfields(res: PPGresult): int32 {...}{.cdecl, dynlib: dllName,
                                        importc: "PQnfields".}
Исходный код Изменить
proc pqbinaryTuples(res: PPGresult): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQbinaryTuples".}
Исходный код Изменить
proc pqfname(res: PPGresult; field_num: int32): cstring {...}{.cdecl,
    dynlib: dllName, importc: "PQfname".}
Исходный код Изменить
proc pqfnumber(res: PPGresult; field_name: cstring): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQfnumber".}
Исходный код Изменить
proc pqftable(res: PPGresult; field_num: int32): Oid {...}{.cdecl, dynlib: dllName,
    importc: "PQftable".}
Исходный код Изменить
proc pqftablecol(res: PPGresult; field_num: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQftablecol".}
Исходный код Изменить
proc pqfformat(res: PPGresult; field_num: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "PQfformat".}
Исходный код Изменить
proc pqftype(res: PPGresult; field_num: int32): Oid {...}{.cdecl, dynlib: dllName,
    importc: "PQftype".}
Исходный код Изменить
proc pqfsize(res: PPGresult; field_num: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQfsize".}
Исходный код Изменить
proc pqfmod(res: PPGresult; field_num: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQfmod".}
Исходный код Изменить
proc pqcmdStatus(res: PPGresult): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQcmdStatus".}
Исходный код Изменить
proc pqoidStatus(res: PPGresult): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQoidStatus".}
Исходный код Изменить
proc pqoidValue(res: PPGresult): Oid {...}{.cdecl, dynlib: dllName,
                                       importc: "PQoidValue".}
Исходный код Изменить
proc pqcmdTuples(res: PPGresult): cstring {...}{.cdecl, dynlib: dllName,
    importc: "PQcmdTuples".}
Исходный код Изменить
proc pqgetvalue(res: PPGresult; tup_num: int32; field_num: int32): cstring {...}{.
    cdecl, dynlib: dllName, importc: "PQgetvalue".}
Исходный код Изменить
proc pqgetlength(res: PPGresult; tup_num: int32; field_num: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "PQgetlength".}
Исходный код Изменить
proc pqgetisnull(res: PPGresult; tup_num: int32; field_num: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "PQgetisnull".}
Исходный код Изменить
proc pqclear(res: PPGresult) {...}{.cdecl, dynlib: dllName, importc: "PQclear".}
Исходный код Изменить
proc pqfreemem(p: pointer) {...}{.cdecl, dynlib: dllName, importc: "PQfreemem".}
Исходный код Изменить
proc pqmakeEmptyPGresult(conn: PPGconn; status: ExecStatusType): PPGresult {...}{.
    cdecl, dynlib: dllName, importc: "PQmakeEmptyPGresult".}
Исходный код Изменить
proc pqescapeString(till, from: cstring; len: int): int {...}{.cdecl,
    dynlib: dllName, importc: "PQescapeString".}
Исходный код Изменить
proc pqescapeBytea(bintext: cstring; binlen: int; bytealen: var int): cstring {...}{.
    cdecl, dynlib: dllName, importc: "PQescapeBytea".}
Исходный код Изменить
proc pqunescapeBytea(strtext: cstring; retbuflen: var int): cstring {...}{.cdecl,
    dynlib: dllName, importc: "PQunescapeBytea".}
Исходный код Изменить
proc pqprint(fout: File; res: PPGresult; ps: PPQprintOpt) {...}{.cdecl,
    dynlib: dllName, importc: "PQprint".}
Источник Изменить
proc pqdisplayTuples(res: PPGresult; fp: File; fillAlign: int32;
                     fieldSep: cstring; printHeader: int32; quiet: int32) {...}{.
    cdecl, dynlib: dllName, importc: "PQdisplayTuples".}
Источник Изменить
proc pqprintTuples(res: PPGresult; fout: File; printAttName: int32;
                   terseOutput: int32; width: int32) {...}{.cdecl, dynlib: dllName,
    importc: "PQprintTuples".}
Источник Изменить
proc lo_open(conn: PPGconn; lobjId: Oid; mode: int32): int32 {...}{.cdecl,
    dynlib: dllName, importc: "lo_open".}
Источник Изменить
proc lo_close(conn: PPGconn; fd: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "lo_close".}
Источник Изменить
proc lo_read(conn: PPGconn; fd: int32; buf: cstring; length: int): int32 {...}{.
    cdecl, dynlib: dllName, importc: "lo_read".}
Источник Изменить
proc lo_write(conn: PPGconn; fd: int32; buf: cstring; length: int): int32 {...}{.
    cdecl, dynlib: dllName, importc: "lo_write".}
Источник Изменить
proc lo_lseek(conn: PPGconn; fd: int32; offset: int32; whence: int32): int32 {...}{.
    cdecl, dynlib: dllName, importc: "lo_lseek".}
Источник Изменить
proc lo_creat(conn: PPGconn; mode: int32): Oid {...}{.cdecl, dynlib: dllName,
    importc: "lo_creat".}
Источник Изменить
proc lo_tell(conn: PPGconn; fd: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "lo_tell".}
Источник Изменить
proc lo_unlink(conn: PPGconn; lobjId: Oid): int32 {...}{.cdecl, dynlib: dllName,
    importc: "lo_unlink".}
Источник Изменить
proc lo_import(conn: PPGconn; filename: cstring): Oid {...}{.cdecl, dynlib: dllName,
    importc: "lo_import".}
Источник Изменить
proc lo_export(conn: PPGconn; lobjId: Oid; filename: cstring): int32 {...}{.cdecl,
    dynlib: dllName, importc: "lo_export".}
Источник Изменить
proc pqmblen(s: cstring; encoding: int32): int32 {...}{.cdecl, dynlib: dllName,
    importc: "PQmblen".}
Источник Изменить
proc pqenv2encoding(): int32 {...}{.cdecl, dynlib: dllName, importc: "PQenv2encoding".}
Источник Изменить
proc pqsetdb(M_PGHOST, M_PGPORT, M_PGOPT, M_PGTTY, M_DBNAME: cstring): PPGconn {...}{.
    raises: [], tags: [].}
Источник Изменить

© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/postgres.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API