1 /*[clinic input]
2 preserve
3 [clinic start generated code]*/
4
5 PyDoc_STRVAR(_contextvars_Context_get__doc__,
6 "get($self, key, default=None, /)\n"
7 "--\n"
8 "\n"
9 "Return the value for `key` if `key` has the value in the context object.\n"
10 "\n"
11 "If `key` does not exist, return `default`. If `default` is not given,\n"
12 "return None.");
13
14 #define _CONTEXTVARS_CONTEXT_GET_METHODDEF \
15 {"get", (PyCFunction)(void(*)(void))_contextvars_Context_get, METH_FASTCALL, _contextvars_Context_get__doc__},
16
17 static PyObject *
18 _contextvars_Context_get_impl(PyContext *self, PyObject *key,
19 PyObject *default_value);
20
21 static PyObject *
_contextvars_Context_get(PyContext * self,PyObject * const * args,Py_ssize_t nargs)22 _contextvars_Context_get(PyContext *self, PyObject *const *args, Py_ssize_t nargs)
23 {
24 PyObject *return_value = NULL;
25 PyObject *key;
26 PyObject *default_value = Py_None;
27
28 if (!_PyArg_CheckPositional("get", nargs, 1, 2)) {
29 goto exit;
30 }
31 key = args[0];
32 if (nargs < 2) {
33 goto skip_optional;
34 }
35 default_value = args[1];
36 skip_optional:
37 return_value = _contextvars_Context_get_impl(self, key, default_value);
38
39 exit:
40 return return_value;
41 }
42
43 PyDoc_STRVAR(_contextvars_Context_items__doc__,
44 "items($self, /)\n"
45 "--\n"
46 "\n"
47 "Return all variables and their values in the context object.\n"
48 "\n"
49 "The result is returned as a list of 2-tuples (variable, value).");
50
51 #define _CONTEXTVARS_CONTEXT_ITEMS_METHODDEF \
52 {"items", (PyCFunction)_contextvars_Context_items, METH_NOARGS, _contextvars_Context_items__doc__},
53
54 static PyObject *
55 _contextvars_Context_items_impl(PyContext *self);
56
57 static PyObject *
_contextvars_Context_items(PyContext * self,PyObject * Py_UNUSED (ignored))58 _contextvars_Context_items(PyContext *self, PyObject *Py_UNUSED(ignored))
59 {
60 return _contextvars_Context_items_impl(self);
61 }
62
63 PyDoc_STRVAR(_contextvars_Context_keys__doc__,
64 "keys($self, /)\n"
65 "--\n"
66 "\n"
67 "Return a list of all variables in the context object.");
68
69 #define _CONTEXTVARS_CONTEXT_KEYS_METHODDEF \
70 {"keys", (PyCFunction)_contextvars_Context_keys, METH_NOARGS, _contextvars_Context_keys__doc__},
71
72 static PyObject *
73 _contextvars_Context_keys_impl(PyContext *self);
74
75 static PyObject *
_contextvars_Context_keys(PyContext * self,PyObject * Py_UNUSED (ignored))76 _contextvars_Context_keys(PyContext *self, PyObject *Py_UNUSED(ignored))
77 {
78 return _contextvars_Context_keys_impl(self);
79 }
80
81 PyDoc_STRVAR(_contextvars_Context_values__doc__,
82 "values($self, /)\n"
83 "--\n"
84 "\n"
85 "Return a list of all variables\' values in the context object.");
86
87 #define _CONTEXTVARS_CONTEXT_VALUES_METHODDEF \
88 {"values", (PyCFunction)_contextvars_Context_values, METH_NOARGS, _contextvars_Context_values__doc__},
89
90 static PyObject *
91 _contextvars_Context_values_impl(PyContext *self);
92
93 static PyObject *
_contextvars_Context_values(PyContext * self,PyObject * Py_UNUSED (ignored))94 _contextvars_Context_values(PyContext *self, PyObject *Py_UNUSED(ignored))
95 {
96 return _contextvars_Context_values_impl(self);
97 }
98
99 PyDoc_STRVAR(_contextvars_Context_copy__doc__,
100 "copy($self, /)\n"
101 "--\n"
102 "\n"
103 "Return a shallow copy of the context object.");
104
105 #define _CONTEXTVARS_CONTEXT_COPY_METHODDEF \
106 {"copy", (PyCFunction)_contextvars_Context_copy, METH_NOARGS, _contextvars_Context_copy__doc__},
107
108 static PyObject *
109 _contextvars_Context_copy_impl(PyContext *self);
110
111 static PyObject *
_contextvars_Context_copy(PyContext * self,PyObject * Py_UNUSED (ignored))112 _contextvars_Context_copy(PyContext *self, PyObject *Py_UNUSED(ignored))
113 {
114 return _contextvars_Context_copy_impl(self);
115 }
116
117 PyDoc_STRVAR(_contextvars_ContextVar_get__doc__,
118 "get($self, default=<unrepresentable>, /)\n"
119 "--\n"
120 "\n"
121 "Return a value for the context variable for the current context.\n"
122 "\n"
123 "If there is no value for the variable in the current context, the method will:\n"
124 " * return the value of the default argument of the method, if provided; or\n"
125 " * return the default value for the context variable, if it was created\n"
126 " with one; or\n"
127 " * raise a LookupError.");
128
129 #define _CONTEXTVARS_CONTEXTVAR_GET_METHODDEF \
130 {"get", (PyCFunction)(void(*)(void))_contextvars_ContextVar_get, METH_FASTCALL, _contextvars_ContextVar_get__doc__},
131
132 static PyObject *
133 _contextvars_ContextVar_get_impl(PyContextVar *self, PyObject *default_value);
134
135 static PyObject *
_contextvars_ContextVar_get(PyContextVar * self,PyObject * const * args,Py_ssize_t nargs)136 _contextvars_ContextVar_get(PyContextVar *self, PyObject *const *args, Py_ssize_t nargs)
137 {
138 PyObject *return_value = NULL;
139 PyObject *default_value = NULL;
140
141 if (!_PyArg_CheckPositional("get", nargs, 0, 1)) {
142 goto exit;
143 }
144 if (nargs < 1) {
145 goto skip_optional;
146 }
147 default_value = args[0];
148 skip_optional:
149 return_value = _contextvars_ContextVar_get_impl(self, default_value);
150
151 exit:
152 return return_value;
153 }
154
155 PyDoc_STRVAR(_contextvars_ContextVar_set__doc__,
156 "set($self, value, /)\n"
157 "--\n"
158 "\n"
159 "Call to set a new value for the context variable in the current context.\n"
160 "\n"
161 "The required value argument is the new value for the context variable.\n"
162 "\n"
163 "Returns a Token object that can be used to restore the variable to its previous\n"
164 "value via the `ContextVar.reset()` method.");
165
166 #define _CONTEXTVARS_CONTEXTVAR_SET_METHODDEF \
167 {"set", (PyCFunction)_contextvars_ContextVar_set, METH_O, _contextvars_ContextVar_set__doc__},
168
169 PyDoc_STRVAR(_contextvars_ContextVar_reset__doc__,
170 "reset($self, token, /)\n"
171 "--\n"
172 "\n"
173 "Reset the context variable.\n"
174 "\n"
175 "The variable is reset to the value it had before the `ContextVar.set()` that\n"
176 "created the token was used.");
177
178 #define _CONTEXTVARS_CONTEXTVAR_RESET_METHODDEF \
179 {"reset", (PyCFunction)_contextvars_ContextVar_reset, METH_O, _contextvars_ContextVar_reset__doc__},
180 /*[clinic end generated code: output=f2e42f34e358e179 input=a9049054013a1b77]*/
181