]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-94321: Document sqlite3.PrepareProtocol (#94620)
authorErlend Egeberg Aasland <erlend.aasland@protonmail.com>
Thu, 7 Jul 2022 22:33:17 +0000 (00:33 +0200)
committerGitHub <noreply@github.com>
Thu, 7 Jul 2022 22:33:17 +0000 (00:33 +0200)
Doc/library/sqlite3.rst
Misc/NEWS.d/next/Documentation/2022-07-07-08-42-05.gh-issue-94321.pmCIPb.rst [new file with mode: 0644]
Modules/_sqlite/prepare_protocol.c

index ad49a217d3b4a6fbebfb2b9163cfacfbf11ba6c5..2f4e2aeef93994dc29109f6f3a6996a7dd436967 100644 (file)
@@ -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 (file)
index 0000000..c1a8dcd
--- /dev/null
@@ -0,0 +1,2 @@
+Document the :pep:`246` style protocol type
+:class:`sqlite3.PrepareProtocol`.
index cefb46e390ad6bbbf8f3d598e5f13ea63402cb54..44533225665dab5935cf97ce0aec52ae028a9b5c 100644 (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},
 };