use oid constants
[postmodern.git] / cl-postgres / strings-utf-8.lisp
blobf2c01369dee26c71ca8b1b971eb688b03bce3491
1 (in-package :cl-postgres)
3 (defparameter *client-encoding* "UNICODE")
5 (declaim (inline enc-byte-length))
6 (defun enc-byte-length (sequence)
7 (cl-postgres-trivial-utf-8:utf-8-byte-length sequence))
9 (declaim (inline enc-write-string))
10 (defun enc-write-string (string output &key null-terminate)
11 (cl-postgres-trivial-utf-8:write-utf-8-bytes string output
12 :null-terminate null-terminate))
14 (declaim (inline enc-read-string))
15 (declaim (ftype (function (t &key (:null-terminated t)
16 (:byte-length unsigned-byte))
17 string)
18 enc-read-string))
19 (defun enc-read-string (input &key null-terminated (byte-length -1))
20 (cl-postgres-trivial-utf-8:read-utf-8-string
21 input :null-terminated null-terminated :byte-length byte-length))
23 (declaim (inline enc-string-bytes))
24 (defun enc-string-bytes (string &key null-terminate)
25 (cl-postgres-trivial-utf-8:string-to-utf-8-bytes
26 string :null-terminate null-terminate))