Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
allendowney
GitHub Repository: allendowney/cpython
Path: blob/main/Objects/clinic/typeobject.c.h
12 views
1
/*[clinic input]
2
preserve
3
[clinic start generated code]*/
4
5
#if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE)
6
# include "pycore_gc.h" // PyGC_Head
7
# include "pycore_runtime.h" // _Py_ID()
8
#endif
9
10
11
PyDoc_STRVAR(type___instancecheck____doc__,
12
"__instancecheck__($self, instance, /)\n"
13
"--\n"
14
"\n"
15
"Check if an object is an instance.");
16
17
#define TYPE___INSTANCECHECK___METHODDEF \
18
{"__instancecheck__", (PyCFunction)type___instancecheck__, METH_O, type___instancecheck____doc__},
19
20
static int
21
type___instancecheck___impl(PyTypeObject *self, PyObject *instance);
22
23
static PyObject *
24
type___instancecheck__(PyTypeObject *self, PyObject *instance)
25
{
26
PyObject *return_value = NULL;
27
int _return_value;
28
29
_return_value = type___instancecheck___impl(self, instance);
30
if ((_return_value == -1) && PyErr_Occurred()) {
31
goto exit;
32
}
33
return_value = PyBool_FromLong((long)_return_value);
34
35
exit:
36
return return_value;
37
}
38
39
PyDoc_STRVAR(type___subclasscheck____doc__,
40
"__subclasscheck__($self, subclass, /)\n"
41
"--\n"
42
"\n"
43
"Check if a class is a subclass.");
44
45
#define TYPE___SUBCLASSCHECK___METHODDEF \
46
{"__subclasscheck__", (PyCFunction)type___subclasscheck__, METH_O, type___subclasscheck____doc__},
47
48
static int
49
type___subclasscheck___impl(PyTypeObject *self, PyObject *subclass);
50
51
static PyObject *
52
type___subclasscheck__(PyTypeObject *self, PyObject *subclass)
53
{
54
PyObject *return_value = NULL;
55
int _return_value;
56
57
_return_value = type___subclasscheck___impl(self, subclass);
58
if ((_return_value == -1) && PyErr_Occurred()) {
59
goto exit;
60
}
61
return_value = PyBool_FromLong((long)_return_value);
62
63
exit:
64
return return_value;
65
}
66
67
PyDoc_STRVAR(type_mro__doc__,
68
"mro($self, /)\n"
69
"--\n"
70
"\n"
71
"Return a type\'s method resolution order.");
72
73
#define TYPE_MRO_METHODDEF \
74
{"mro", (PyCFunction)type_mro, METH_NOARGS, type_mro__doc__},
75
76
static PyObject *
77
type_mro_impl(PyTypeObject *self);
78
79
static PyObject *
80
type_mro(PyTypeObject *self, PyObject *Py_UNUSED(ignored))
81
{
82
return type_mro_impl(self);
83
}
84
85
PyDoc_STRVAR(type___subclasses____doc__,
86
"__subclasses__($self, /)\n"
87
"--\n"
88
"\n"
89
"Return a list of immediate subclasses.");
90
91
#define TYPE___SUBCLASSES___METHODDEF \
92
{"__subclasses__", (PyCFunction)type___subclasses__, METH_NOARGS, type___subclasses____doc__},
93
94
static PyObject *
95
type___subclasses___impl(PyTypeObject *self);
96
97
static PyObject *
98
type___subclasses__(PyTypeObject *self, PyObject *Py_UNUSED(ignored))
99
{
100
return type___subclasses___impl(self);
101
}
102
103
PyDoc_STRVAR(type___dir____doc__,
104
"__dir__($self, /)\n"
105
"--\n"
106
"\n"
107
"Specialized __dir__ implementation for types.");
108
109
#define TYPE___DIR___METHODDEF \
110
{"__dir__", (PyCFunction)type___dir__, METH_NOARGS, type___dir____doc__},
111
112
static PyObject *
113
type___dir___impl(PyTypeObject *self);
114
115
static PyObject *
116
type___dir__(PyTypeObject *self, PyObject *Py_UNUSED(ignored))
117
{
118
return type___dir___impl(self);
119
}
120
121
PyDoc_STRVAR(type___sizeof____doc__,
122
"__sizeof__($self, /)\n"
123
"--\n"
124
"\n"
125
"Return memory consumption of the type object.");
126
127
#define TYPE___SIZEOF___METHODDEF \
128
{"__sizeof__", (PyCFunction)type___sizeof__, METH_NOARGS, type___sizeof____doc__},
129
130
static PyObject *
131
type___sizeof___impl(PyTypeObject *self);
132
133
static PyObject *
134
type___sizeof__(PyTypeObject *self, PyObject *Py_UNUSED(ignored))
135
{
136
return type___sizeof___impl(self);
137
}
138
139
PyDoc_STRVAR(object___getstate____doc__,
140
"__getstate__($self, /)\n"
141
"--\n"
142
"\n"
143
"Helper for pickle.");
144
145
#define OBJECT___GETSTATE___METHODDEF \
146
{"__getstate__", (PyCFunction)object___getstate__, METH_NOARGS, object___getstate____doc__},
147
148
static PyObject *
149
object___getstate___impl(PyObject *self);
150
151
static PyObject *
152
object___getstate__(PyObject *self, PyObject *Py_UNUSED(ignored))
153
{
154
return object___getstate___impl(self);
155
}
156
157
PyDoc_STRVAR(object___reduce____doc__,
158
"__reduce__($self, /)\n"
159
"--\n"
160
"\n"
161
"Helper for pickle.");
162
163
#define OBJECT___REDUCE___METHODDEF \
164
{"__reduce__", (PyCFunction)object___reduce__, METH_NOARGS, object___reduce____doc__},
165
166
static PyObject *
167
object___reduce___impl(PyObject *self);
168
169
static PyObject *
170
object___reduce__(PyObject *self, PyObject *Py_UNUSED(ignored))
171
{
172
return object___reduce___impl(self);
173
}
174
175
PyDoc_STRVAR(object___reduce_ex____doc__,
176
"__reduce_ex__($self, protocol, /)\n"
177
"--\n"
178
"\n"
179
"Helper for pickle.");
180
181
#define OBJECT___REDUCE_EX___METHODDEF \
182
{"__reduce_ex__", (PyCFunction)object___reduce_ex__, METH_O, object___reduce_ex____doc__},
183
184
static PyObject *
185
object___reduce_ex___impl(PyObject *self, int protocol);
186
187
static PyObject *
188
object___reduce_ex__(PyObject *self, PyObject *arg)
189
{
190
PyObject *return_value = NULL;
191
int protocol;
192
193
protocol = _PyLong_AsInt(arg);
194
if (protocol == -1 && PyErr_Occurred()) {
195
goto exit;
196
}
197
return_value = object___reduce_ex___impl(self, protocol);
198
199
exit:
200
return return_value;
201
}
202
203
PyDoc_STRVAR(object___format____doc__,
204
"__format__($self, format_spec, /)\n"
205
"--\n"
206
"\n"
207
"Default object formatter.\n"
208
"\n"
209
"Return str(self) if format_spec is empty. Raise TypeError otherwise.");
210
211
#define OBJECT___FORMAT___METHODDEF \
212
{"__format__", (PyCFunction)object___format__, METH_O, object___format____doc__},
213
214
static PyObject *
215
object___format___impl(PyObject *self, PyObject *format_spec);
216
217
static PyObject *
218
object___format__(PyObject *self, PyObject *arg)
219
{
220
PyObject *return_value = NULL;
221
PyObject *format_spec;
222
223
if (!PyUnicode_Check(arg)) {
224
_PyArg_BadArgument("__format__", "argument", "str", arg);
225
goto exit;
226
}
227
format_spec = arg;
228
return_value = object___format___impl(self, format_spec);
229
230
exit:
231
return return_value;
232
}
233
234
PyDoc_STRVAR(object___sizeof____doc__,
235
"__sizeof__($self, /)\n"
236
"--\n"
237
"\n"
238
"Size of object in memory, in bytes.");
239
240
#define OBJECT___SIZEOF___METHODDEF \
241
{"__sizeof__", (PyCFunction)object___sizeof__, METH_NOARGS, object___sizeof____doc__},
242
243
static PyObject *
244
object___sizeof___impl(PyObject *self);
245
246
static PyObject *
247
object___sizeof__(PyObject *self, PyObject *Py_UNUSED(ignored))
248
{
249
return object___sizeof___impl(self);
250
}
251
252
PyDoc_STRVAR(object___dir____doc__,
253
"__dir__($self, /)\n"
254
"--\n"
255
"\n"
256
"Default dir() implementation.");
257
258
#define OBJECT___DIR___METHODDEF \
259
{"__dir__", (PyCFunction)object___dir__, METH_NOARGS, object___dir____doc__},
260
261
static PyObject *
262
object___dir___impl(PyObject *self);
263
264
static PyObject *
265
object___dir__(PyObject *self, PyObject *Py_UNUSED(ignored))
266
{
267
return object___dir___impl(self);
268
}
269
/*[clinic end generated code: output=43533e6981550e9e input=a9049054013a1b77]*/
270
271