gh-94321: Document sqlite3.PrepareProtocol (GH-94620)

(cherry picked from commit fb6dccae34)

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
This commit is contained in:
Miss Islington (bot) 2022-07-07 16:09:05 -07:00 committed by GitHub
parent 77a015387b
commit c72001e5bd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 0 deletions

View file

@ -1127,6 +1127,16 @@ Blob Objects
end).
PrepareProtocol Objects
-----------------------
.. class:: PrepareProtocol
The PrepareProtocol type's single purpose is to act as a :pep:`246` style
adaption protocol for objects that can :ref:`adapt themselves
<sqlite3-conform>` to :ref:`native SQLite types <sqlite3-types>`.
.. _sqlite3-exceptions:
Exceptions
@ -1287,6 +1297,8 @@ As an application developer, it may make more sense to take direct control by
registering custom adapter functions.
.. _sqlite3-conform:
Letting your object adapt itself
""""""""""""""""""""""""""""""""

View file

@ -0,0 +1,2 @@
Document the :pep:`246` style protocol type
:class:`sqlite3.PrepareProtocol`.

View file

@ -46,10 +46,13 @@ pysqlite_prepare_protocol_dealloc(pysqlite_PrepareProtocol *self)
Py_DECREF(tp);
}
PyDoc_STRVAR(doc, "PEP 246 style object adaption protocol type.");
static PyType_Slot type_slots[] = {
{Py_tp_dealloc, pysqlite_prepare_protocol_dealloc},
{Py_tp_init, pysqlite_prepare_protocol_init},
{Py_tp_traverse, pysqlite_prepare_protocol_traverse},
{Py_tp_doc, (void *)doc},
{0, NULL},
};