[Python-checkins] gh-94321: Document sqlite3.PrepareProtocol (#94620)
erlend-aasland
webhook-mailer at python.org
Thu Jul 7 18:33:22 EDT 2022
https://github.com/python/cpython/commit/fb6dccae348b954d9f625031b54711a9a33da525
commit: fb6dccae348b954d9f625031b54711a9a33da525
branch: main
author: Erlend Egeberg Aasland <erlend.aasland at protonmail.com>
committer: erlend-aasland <erlend.aasland at protonmail.com>
date: 2022-07-08T00:33:17+02:00
summary:
gh-94321: Document sqlite3.PrepareProtocol (#94620)
files:
A Misc/NEWS.d/next/Documentation/2022-07-07-08-42-05.gh-issue-94321.pmCIPb.rst
M Doc/library/sqlite3.rst
M Modules/_sqlite/prepare_protocol.c
diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst
index ad49a217d3b4a..2f4e2aeef9399 100644
--- a/Doc/library/sqlite3.rst
+++ b/Doc/library/sqlite3.rst
@@ -1139,6 +1139,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
@@ -1297,6 +1307,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
""""""""""""""""""""""""""""""""
diff --git a/Misc/NEWS.d/next/Documentation/2022-07-07-08-42-05.gh-issue-94321.pmCIPb.rst b/Misc/NEWS.d/next/Documentation/2022-07-07-08-42-05.gh-issue-94321.pmCIPb.rst
new file mode 100644
index 0000000000000..c1a8dcd853538
--- /dev/null
+++ b/Misc/NEWS.d/next/Documentation/2022-07-07-08-42-05.gh-issue-94321.pmCIPb.rst
@@ -0,0 +1,2 @@
+Document the :pep:`246` style protocol type
+:class:`sqlite3.PrepareProtocol`.
diff --git a/Modules/_sqlite/prepare_protocol.c b/Modules/_sqlite/prepare_protocol.c
index cefb46e390ad6..44533225665da 100644
--- a/Modules/_sqlite/prepare_protocol.c
+++ b/Modules/_sqlite/prepare_protocol.c
@@ -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},
};
More information about the Python-checkins
mailing list