Coverage Report

Created: 2025-08-24 07:03

/src/cpython/Include/object.h
Line
Count
Source (jump to first uncovered line)
1
#ifndef Py_OBJECT_H
2
#define Py_OBJECT_H
3
#ifdef __cplusplus
4
extern "C" {
5
#endif
6
7
8
/* Object and type object interface */
9
10
/*
11
Objects are structures allocated on the heap.  Special rules apply to
12
the use of objects to ensure they are properly garbage-collected.
13
Objects are never allocated statically or on the stack; they must be
14
accessed through special macros and functions only.  (Type objects are
15
exceptions to the first rule; the standard types are represented by
16
statically initialized type objects, although work on type/class unification
17
for Python 2.2 made it possible to have heap-allocated type objects too).
18
19
An object has a 'reference count' that is increased or decreased when a
20
pointer to the object is copied or deleted; when the reference count
21
reaches zero there are no references to the object left and it can be
22
removed from the heap.
23
24
An object has a 'type' that determines what it represents and what kind
25
of data it contains.  An object's type is fixed when it is created.
26
Types themselves are represented as objects; an object contains a
27
pointer to the corresponding type object.  The type itself has a type
28
pointer pointing to the object representing the type 'type', which
29
contains a pointer to itself!.
30
31
Objects do not float around in memory; once allocated an object keeps
32
the same size and address.  Objects that must hold variable-size data
33
can contain pointers to variable-size parts of the object.  Not all
34
objects of the same type have the same size; but the size cannot change
35
after allocation.  (These restrictions are made so a reference to an
36
object can be simply a pointer -- moving an object would require
37
updating all the pointers, and changing an object's size would require
38
moving it if there was another object right next to it.)
39
40
Objects are always accessed through pointers of the type 'PyObject *'.
41
The type 'PyObject' is a structure that only contains the reference count
42
and the type pointer.  The actual memory allocated for an object
43
contains other data that can only be accessed after casting the pointer
44
to a pointer to a longer structure type.  This longer type must start
45
with the reference count and type fields; the macro PyObject_HEAD should be
46
used for this (to accommodate for future changes).  The implementation
47
of a particular object type can cast the object pointer to the proper
48
type and back.
49
50
A standard interface exists for objects that contain an array of items
51
whose size is determined when the object is allocated.
52
*/
53
54
/* Py_DEBUG implies Py_REF_DEBUG. */
55
#if defined(Py_DEBUG) && !defined(Py_REF_DEBUG)
56
#  define Py_REF_DEBUG
57
#endif
58
59
#if defined(_Py_OPAQUE_PYOBJECT) && !defined(Py_LIMITED_API)
60
#   error "_Py_OPAQUE_PYOBJECT only makes sense with Py_LIMITED_API"
61
#endif
62
63
#ifndef _Py_OPAQUE_PYOBJECT
64
/* PyObject_HEAD defines the initial segment of every PyObject. */
65
#define PyObject_HEAD                   PyObject ob_base;
66
67
// Kept for backward compatibility. It was needed by Py_TRACE_REFS build.
68
#define _PyObject_EXTRA_INIT
69
70
/* Make all uses of PyObject_HEAD_INIT immortal.
71
 *
72
 * Statically allocated objects might be shared between
73
 * interpreters, so must be marked as immortal.
74
 */
75
#if defined(Py_GIL_DISABLED)
76
#define PyObject_HEAD_INIT(type)    \
77
    {                               \
78
        0,                          \
79
        _Py_STATICALLY_ALLOCATED_FLAG, \
80
        { 0 },                      \
81
        0,                          \
82
        _Py_IMMORTAL_REFCNT_LOCAL,  \
83
        0,                          \
84
        (type),                     \
85
    },
86
#else
87
#define PyObject_HEAD_INIT(type)    \
88
276M
    {                               \
89
276M
        { _Py_STATIC_IMMORTAL_INITIAL_REFCNT },    \
90
276M
        (type)                      \
91
276M
    },
92
#endif
93
94
#define PyVarObject_HEAD_INIT(type, size) \
95
276M
    {                                     \
96
276M
        PyObject_HEAD_INIT(type)          \
97
276M
        (size)                            \
98
276M
    },
99
100
/* PyObject_VAR_HEAD defines the initial segment of all variable-size
101
 * container objects.  These end with a declaration of an array with 1
102
 * element, but enough space is malloc'ed so that the array actually
103
 * has room for ob_size elements.  Note that ob_size is an element count,
104
 * not necessarily a byte count.
105
 */
106
#define PyObject_VAR_HEAD      PyVarObject ob_base;
107
#endif // !defined(_Py_OPAQUE_PYOBJECT)
108
109
#define Py_INVALID_SIZE (Py_ssize_t)-1
110
111
/* PyObjects are given a minimum alignment so that the least significant bits
112
 * of an object pointer become available for other purposes.
113
 * This must be an integer literal with the value (1 << _PyGC_PREV_SHIFT), number of bytes.
114
 */
115
#define _PyObject_MIN_ALIGNMENT 4
116
117
/* Nothing is actually declared to be a PyObject, but every pointer to
118
 * a Python object can be cast to a PyObject*.  This is inheritance built
119
 * by hand.  Similarly every pointer to a variable-size Python object can,
120
 * in addition, be cast to PyVarObject*.
121
 */
122
#ifdef _Py_OPAQUE_PYOBJECT
123
  /* PyObject is opaque */
124
#elif !defined(Py_GIL_DISABLED)
125
struct _object {
126
#if (defined(__GNUC__) || defined(__clang__)) \
127
        && !(defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)
128
    // On C99 and older, anonymous union is a GCC and clang extension
129
    __extension__
130
#endif
131
#ifdef _MSC_VER
132
    // Ignore MSC warning C4201: "nonstandard extension used:
133
    // nameless struct/union"
134
    __pragma(warning(push))
135
    __pragma(warning(disable: 4201))
136
#endif
137
    union {
138
#if SIZEOF_VOID_P > 4
139
        PY_INT64_T ob_refcnt_full; /* This field is needed for efficient initialization with Clang on ARM */
140
        struct {
141
#  if PY_BIG_ENDIAN
142
            uint16_t ob_flags;
143
            uint16_t ob_overflow;
144
            uint32_t ob_refcnt;
145
#  else
146
            uint32_t ob_refcnt;
147
            uint16_t ob_overflow;
148
            uint16_t ob_flags;
149
#  endif
150
        };
151
#else
152
        Py_ssize_t ob_refcnt;
153
#endif
154
        _Py_ALIGNED_DEF(_PyObject_MIN_ALIGNMENT, char) _aligner;
155
    };
156
#ifdef _MSC_VER
157
    __pragma(warning(pop))
158
#endif
159
160
    PyTypeObject *ob_type;
161
};
162
#else
163
// Objects that are not owned by any thread use a thread id (tid) of zero.
164
// This includes both immortal objects and objects whose reference count
165
// fields have been merged.
166
#define _Py_UNOWNED_TID             0
167
168
struct _object {
169
    // ob_tid stores the thread id (or zero). It is also used by the GC and the
170
    // trashcan mechanism as a linked list pointer and by the GC to store the
171
    // computed "gc_refs" refcount.
172
    _Py_ALIGNED_DEF(_PyObject_MIN_ALIGNMENT, uintptr_t) ob_tid;
173
    uint16_t ob_flags;
174
    PyMutex ob_mutex;           // per-object lock
175
    uint8_t ob_gc_bits;         // gc-related state
176
    uint32_t ob_ref_local;      // local reference count
177
    Py_ssize_t ob_ref_shared;   // shared (atomic) reference count
178
    PyTypeObject *ob_type;
179
};
180
#endif // !defined(_Py_OPAQUE_PYOBJECT)
181
182
/* Cast argument to PyObject* type. */
183
161G
#define _PyObject_CAST(op) _Py_CAST(PyObject*, (op))
184
185
#ifndef _Py_OPAQUE_PYOBJECT
186
struct PyVarObject {
187
    PyObject ob_base;
188
    Py_ssize_t ob_size; /* Number of items in variable part */
189
};
190
#endif
191
typedef struct PyVarObject PyVarObject;
192
193
/* Cast argument to PyVarObject* type. */
194
7.75G
#define _PyVarObject_CAST(op) _Py_CAST(PyVarObject*, (op))
195
196
197
// Test if the 'x' object is the 'y' object, the same as "x is y" in Python.
198
PyAPI_FUNC(int) Py_Is(PyObject *x, PyObject *y);
199
225M
#define Py_Is(x, y) ((x) == (y))
200
201
#if defined(Py_GIL_DISABLED) && !defined(Py_LIMITED_API)
202
PyAPI_FUNC(uintptr_t) _Py_GetThreadLocal_Addr(void);
203
204
static inline uintptr_t
205
_Py_ThreadId(void)
206
{
207
    uintptr_t tid;
208
#if defined(_MSC_VER) && defined(_M_X64)
209
    tid = __readgsqword(48);
210
#elif defined(_MSC_VER) && defined(_M_IX86)
211
    tid = __readfsdword(24);
212
#elif defined(_MSC_VER) && defined(_M_ARM64)
213
    tid = __getReg(18);
214
#elif defined(__MINGW32__) && defined(_M_X64)
215
    tid = __readgsqword(48);
216
#elif defined(__MINGW32__) && defined(_M_IX86)
217
    tid = __readfsdword(24);
218
#elif defined(__MINGW32__) && defined(_M_ARM64)
219
    tid = __getReg(18);
220
#elif defined(__i386__)
221
    __asm__("movl %%gs:0, %0" : "=r" (tid));  // 32-bit always uses GS
222
#elif defined(__MACH__) && defined(__x86_64__)
223
    __asm__("movq %%gs:0, %0" : "=r" (tid));  // x86_64 macOSX uses GS
224
#elif defined(__x86_64__)
225
   __asm__("movq %%fs:0, %0" : "=r" (tid));  // x86_64 Linux, BSD uses FS
226
#elif defined(__arm__) && __ARM_ARCH >= 7
227
    __asm__ ("mrc p15, 0, %0, c13, c0, 3\nbic %0, %0, #3" : "=r" (tid));
228
#elif defined(__aarch64__) && defined(__APPLE__)
229
    __asm__ ("mrs %0, tpidrro_el0" : "=r" (tid));
230
#elif defined(__aarch64__)
231
    __asm__ ("mrs %0, tpidr_el0" : "=r" (tid));
232
#elif defined(__powerpc64__)
233
    #if defined(__clang__) && _Py__has_builtin(__builtin_thread_pointer)
234
    tid = (uintptr_t)__builtin_thread_pointer();
235
    #else
236
    // r13 is reserved for use as system thread ID by the Power 64-bit ABI.
237
    register uintptr_t tp __asm__ ("r13");
238
    __asm__("" : "=r" (tp));
239
    tid = tp;
240
    #endif
241
#elif defined(__powerpc__)
242
    #if defined(__clang__) && _Py__has_builtin(__builtin_thread_pointer)
243
    tid = (uintptr_t)__builtin_thread_pointer();
244
    #else
245
    // r2 is reserved for use as system thread ID by the Power 32-bit ABI.
246
    register uintptr_t tp __asm__ ("r2");
247
    __asm__ ("" : "=r" (tp));
248
    tid = tp;
249
    #endif
250
#elif defined(__s390__) && defined(__GNUC__)
251
    // Both GCC and Clang have supported __builtin_thread_pointer
252
    // for s390 from long time ago.
253
    tid = (uintptr_t)__builtin_thread_pointer();
254
#elif defined(__riscv)
255
    #if defined(__clang__) && _Py__has_builtin(__builtin_thread_pointer)
256
    tid = (uintptr_t)__builtin_thread_pointer();
257
    #else
258
    // tp is Thread Pointer provided by the RISC-V ABI.
259
    __asm__ ("mv %0, tp" : "=r" (tid));
260
    #endif
261
#else
262
    // Fallback to a portable implementation if we do not have a faster
263
    // platform-specific implementation.
264
    tid = _Py_GetThreadLocal_Addr();
265
#endif
266
  return tid;
267
}
268
269
static inline Py_ALWAYS_INLINE int
270
_Py_IsOwnedByCurrentThread(PyObject *ob)
271
{
272
#ifdef _Py_THREAD_SANITIZER
273
    return _Py_atomic_load_uintptr_relaxed(&ob->ob_tid) == _Py_ThreadId();
274
#else
275
    return ob->ob_tid == _Py_ThreadId();
276
#endif
277
}
278
#endif
279
280
// Py_TYPE() implementation for the stable ABI
281
PyAPI_FUNC(PyTypeObject*) Py_TYPE(PyObject *ob);
282
283
#if defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030e0000
284
    // Stable ABI implements Py_TYPE() as a function call
285
    // on limited C API version 3.14 and newer.
286
#else
287
    static inline PyTypeObject* _Py_TYPE(PyObject *ob)
288
38.3G
    {
289
38.3G
        return ob->ob_type;
290
38.3G
    }
bytesobject.c:_Py_TYPE
Line
Count
Source
288
26.5M
    {
289
26.5M
        return ob->ob_type;
290
26.5M
    }
call.c:_Py_TYPE
Line
Count
Source
288
632M
    {
289
632M
        return ob->ob_type;
290
632M
    }
exceptions.c:_Py_TYPE
Line
Count
Source
288
79.1M
    {
289
79.1M
        return ob->ob_type;
290
79.1M
    }
genericaliasobject.c:_Py_TYPE
Line
Count
Source
288
906
    {
289
906
        return ob->ob_type;
290
906
    }
floatobject.c:_Py_TYPE
Line
Count
Source
288
15.0M
    {
289
15.0M
        return ob->ob_type;
290
15.0M
    }
listobject.c:_Py_TYPE
Line
Count
Source
288
722M
    {
289
722M
        return ob->ob_type;
290
722M
    }
longobject.c:_Py_TYPE
Line
Count
Source
288
1.77G
    {
289
1.77G
        return ob->ob_type;
290
1.77G
    }
dictobject.c:_Py_TYPE
Line
Count
Source
288
4.02G
    {
289
4.02G
        return ob->ob_type;
290
4.02G
    }
memoryobject.c:_Py_TYPE
Line
Count
Source
288
2.31k
    {
289
2.31k
        return ob->ob_type;
290
2.31k
    }
moduleobject.c:_Py_TYPE
Line
Count
Source
288
24.9M
    {
289
24.9M
        return ob->ob_type;
290
24.9M
    }
object.c:_Py_TYPE
Line
Count
Source
288
7.37G
    {
289
7.37G
        return ob->ob_type;
290
7.37G
    }
Unexecuted instantiation: obmalloc.c:_Py_TYPE
Unexecuted instantiation: picklebufobject.c:_Py_TYPE
rangeobject.c:_Py_TYPE
Line
Count
Source
288
1.55k
    {
289
1.55k
        return ob->ob_type;
290
1.55k
    }
setobject.c:_Py_TYPE
Line
Count
Source
288
51.7M
    {
289
51.7M
        return ob->ob_type;
290
51.7M
    }
sliceobject.c:_Py_TYPE
Line
Count
Source
288
1.27k
    {
289
1.27k
        return ob->ob_type;
290
1.27k
    }
structseq.c:_Py_TYPE
Line
Count
Source
288
9.39k
    {
289
9.39k
        return ob->ob_type;
290
9.39k
    }
templateobject.c:_Py_TYPE
Line
Count
Source
288
4
    {
289
4
        return ob->ob_type;
290
4
    }
tupleobject.c:_Py_TYPE
Line
Count
Source
288
633M
    {
289
633M
        return ob->ob_type;
290
633M
    }
typeobject.c:_Py_TYPE
Line
Count
Source
288
1.11G
    {
289
1.11G
        return ob->ob_type;
290
1.11G
    }
Unexecuted instantiation: typevarobject.c:_Py_TYPE
unicodeobject.c:_Py_TYPE
Line
Count
Source
288
2.79G
    {
289
2.79G
        return ob->ob_type;
290
2.79G
    }
Unexecuted instantiation: unicodectype.c:_Py_TYPE
unionobject.c:_Py_TYPE
Line
Count
Source
288
962
    {
289
962
        return ob->ob_type;
290
962
    }
weakrefobject.c:_Py_TYPE
Line
Count
Source
288
116M
    {
289
116M
        return ob->ob_type;
290
116M
    }
_warnings.c:_Py_TYPE
Line
Count
Source
288
88.6k
    {
289
88.6k
        return ob->ob_type;
290
88.6k
    }
bltinmodule.c:_Py_TYPE
Line
Count
Source
288
199M
    {
289
199M
        return ob->ob_type;
290
199M
    }
ceval.c:_Py_TYPE
Line
Count
Source
288
12.7G
    {
289
12.7G
        return ob->ob_type;
290
12.7G
    }
codecs.c:_Py_TYPE
Line
Count
Source
288
3.33M
    {
289
3.33M
        return ob->ob_type;
290
3.33M
    }
codegen.c:_Py_TYPE
Line
Count
Source
288
1.43k
    {
289
1.43k
        return ob->ob_type;
290
1.43k
    }
compile.c:_Py_TYPE
Line
Count
Source
288
164k
    {
289
164k
        return ob->ob_type;
290
164k
    }
context.c:_Py_TYPE
Line
Count
Source
288
15.9k
    {
289
15.9k
        return ob->ob_type;
290
15.9k
    }
errors.c:_Py_TYPE
Line
Count
Source
288
387M
    {
289
387M
        return ob->ob_type;
290
387M
    }
flowgraph.c:_Py_TYPE
Line
Count
Source
288
67.9k
    {
289
67.9k
        return ob->ob_type;
290
67.9k
    }
Unexecuted instantiation: frame.c:_Py_TYPE
Unexecuted instantiation: future.c:_Py_TYPE
gc.c:_Py_TYPE
Line
Count
Source
288
2.11G
    {
289
2.11G
        return ob->ob_type;
290
2.11G
    }
Unexecuted instantiation: gc_gil.c:_Py_TYPE
getargs.c:_Py_TYPE
Line
Count
Source
288
14.9M
    {
289
14.9M
        return ob->ob_type;
290
14.9M
    }
Unexecuted instantiation: ceval_gil.c:_Py_TYPE
Unexecuted instantiation: hamt.c:_Py_TYPE
Unexecuted instantiation: hashtable.c:_Py_TYPE
import.c:_Py_TYPE
Line
Count
Source
288
33.1k
    {
289
33.1k
        return ob->ob_type;
290
33.1k
    }
importdl.c:_Py_TYPE
Line
Count
Source
288
912
    {
289
912
        return ob->ob_type;
290
912
    }
initconfig.c:_Py_TYPE
Line
Count
Source
288
448
    {
289
448
        return ob->ob_type;
290
448
    }
Unexecuted instantiation: instrumentation.c:_Py_TYPE
Unexecuted instantiation: instruction_sequence.c:_Py_TYPE
intrinsics.c:_Py_TYPE
Line
Count
Source
288
28.2k
    {
289
28.2k
        return ob->ob_type;
290
28.2k
    }
Unexecuted instantiation: legacy_tracing.c:_Py_TYPE
Unexecuted instantiation: lock.c:_Py_TYPE
marshal.c:_Py_TYPE
Line
Count
Source
288
485k
    {
289
485k
        return ob->ob_type;
290
485k
    }
modsupport.c:_Py_TYPE
Line
Count
Source
288
205k
    {
289
205k
        return ob->ob_type;
290
205k
    }
Unexecuted instantiation: mysnprintf.c:_Py_TYPE
Unexecuted instantiation: parking_lot.c:_Py_TYPE
Unexecuted instantiation: preconfig.c:_Py_TYPE
Unexecuted instantiation: pyarena.c:_Py_TYPE
Unexecuted instantiation: pyctype.c:_Py_TYPE
Unexecuted instantiation: pyhash.c:_Py_TYPE
pylifecycle.c:_Py_TYPE
Line
Count
Source
288
16
    {
289
16
        return ob->ob_type;
290
16
    }
Unexecuted instantiation: pymath.c:_Py_TYPE
Unexecuted instantiation: pystate.c:_Py_TYPE
pythonrun.c:_Py_TYPE
Line
Count
Source
288
45.7k
    {
289
45.7k
        return ob->ob_type;
290
45.7k
    }
Unexecuted instantiation: pytime.c:_Py_TYPE
Unexecuted instantiation: qsbr.c:_Py_TYPE
Unexecuted instantiation: bootstrap_hash.c:_Py_TYPE
specialize.c:_Py_TYPE
Line
Count
Source
288
26.6M
    {
289
26.6M
        return ob->ob_type;
290
26.6M
    }
symtable.c:_Py_TYPE
Line
Count
Source
288
120k
    {
289
120k
        return ob->ob_type;
290
120k
    }
sysmodule.c:_Py_TYPE
Line
Count
Source
288
1.33k
    {
289
1.33k
        return ob->ob_type;
290
1.33k
    }
Unexecuted instantiation: thread.c:_Py_TYPE
traceback.c:_Py_TYPE
Line
Count
Source
288
35.5M
    {
289
35.5M
        return ob->ob_type;
290
35.5M
    }
Unexecuted instantiation: tracemalloc.c:_Py_TYPE
Unexecuted instantiation: getopt.c:_Py_TYPE
Unexecuted instantiation: pystrcmp.c:_Py_TYPE
Unexecuted instantiation: pystrtod.c:_Py_TYPE
Unexecuted instantiation: pystrhex.c:_Py_TYPE
Unexecuted instantiation: dtoa.c:_Py_TYPE
formatter_unicode.c:_Py_TYPE
Line
Count
Source
288
15.7M
    {
289
15.7M
        return ob->ob_type;
290
15.7M
    }
Unexecuted instantiation: fileutils.c:_Py_TYPE
Unexecuted instantiation: suggestions.c:_Py_TYPE
Unexecuted instantiation: perf_trampoline.c:_Py_TYPE
Unexecuted instantiation: perf_jit_trampoline.c:_Py_TYPE
Unexecuted instantiation: remote_debugging.c:_Py_TYPE
Unexecuted instantiation: dynload_shlib.c:_Py_TYPE
Unexecuted instantiation: config.c:_Py_TYPE
Unexecuted instantiation: gcmodule.c:_Py_TYPE
Unexecuted instantiation: _asynciomodule.c:_Py_TYPE
Unexecuted instantiation: atexitmodule.c:_Py_TYPE
Unexecuted instantiation: faulthandler.c:_Py_TYPE
posixmodule.c:_Py_TYPE
Line
Count
Source
288
51.3k
    {
289
51.3k
        return ob->ob_type;
290
51.3k
    }
Unexecuted instantiation: signalmodule.c:_Py_TYPE
Unexecuted instantiation: _tracemalloc.c:_Py_TYPE
Unexecuted instantiation: _suggestions.c:_Py_TYPE
_datetimemodule.c:_Py_TYPE
Line
Count
Source
288
12
    {
289
12
        return ob->ob_type;
290
12
    }
_codecsmodule.c:_Py_TYPE
Line
Count
Source
288
959k
    {
289
959k
        return ob->ob_type;
290
959k
    }
_collectionsmodule.c:_Py_TYPE
Line
Count
Source
288
386k
    {
289
386k
        return ob->ob_type;
290
386k
    }
Unexecuted instantiation: errnomodule.c:_Py_TYPE
_iomodule.c:_Py_TYPE
Line
Count
Source
288
3.06k
    {
289
3.06k
        return ob->ob_type;
290
3.06k
    }
iobase.c:_Py_TYPE
Line
Count
Source
288
15.3k
    {
289
15.3k
        return ob->ob_type;
290
15.3k
    }
fileio.c:_Py_TYPE
Line
Count
Source
288
33.0k
    {
289
33.0k
        return ob->ob_type;
290
33.0k
    }
bytesio.c:_Py_TYPE
Line
Count
Source
288
24.8k
    {
289
24.8k
        return ob->ob_type;
290
24.8k
    }
bufferedio.c:_Py_TYPE
Line
Count
Source
288
35.3k
    {
289
35.3k
        return ob->ob_type;
290
35.3k
    }
textio.c:_Py_TYPE
Line
Count
Source
288
117k
    {
289
117k
        return ob->ob_type;
290
117k
    }
stringio.c:_Py_TYPE
Line
Count
Source
288
21.2M
    {
289
21.2M
        return ob->ob_type;
290
21.2M
    }
itertoolsmodule.c:_Py_TYPE
Line
Count
Source
288
7.42k
    {
289
7.42k
        return ob->ob_type;
290
7.42k
    }
sre.c:_Py_TYPE
Line
Count
Source
288
258M
    {
289
258M
        return ob->ob_type;
290
258M
    }
Unexecuted instantiation: _sysconfig.c:_Py_TYPE
_threadmodule.c:_Py_TYPE
Line
Count
Source
288
21.0k
    {
289
21.0k
        return ob->ob_type;
290
21.0k
    }
Unexecuted instantiation: timemodule.c:_Py_TYPE
Unexecuted instantiation: _typesmodule.c:_Py_TYPE
Unexecuted instantiation: _typingmodule.c:_Py_TYPE
_weakref.c:_Py_TYPE
Line
Count
Source
288
8.36k
    {
289
8.36k
        return ob->ob_type;
290
8.36k
    }
_abc.c:_Py_TYPE
Line
Count
Source
288
598k
    {
289
598k
        return ob->ob_type;
290
598k
    }
_functoolsmodule.c:_Py_TYPE
Line
Count
Source
288
131k
    {
289
131k
        return ob->ob_type;
290
131k
    }
Unexecuted instantiation: _localemodule.c:_Py_TYPE
Unexecuted instantiation: _opcode.c:_Py_TYPE
_operator.c:_Py_TYPE
Line
Count
Source
288
1.63M
    {
289
1.63M
        return ob->ob_type;
290
1.63M
    }
_stat.c:_Py_TYPE
Line
Count
Source
288
16
    {
289
16
        return ob->ob_type;
290
16
    }
Unexecuted instantiation: symtablemodule.c:_Py_TYPE
Unexecuted instantiation: pwdmodule.c:_Py_TYPE
getpath.c:_Py_TYPE
Line
Count
Source
288
448
    {
289
448
        return ob->ob_type;
290
448
    }
Unexecuted instantiation: frozen.c:_Py_TYPE
Unexecuted instantiation: getbuildinfo.c:_Py_TYPE
Unexecuted instantiation: peg_api.c:_Py_TYPE
Unexecuted instantiation: file_tokenizer.c:_Py_TYPE
Unexecuted instantiation: helpers.c:_Py_TYPE
Unexecuted instantiation: myreadline.c:_Py_TYPE
abstract.c:_Py_TYPE
Line
Count
Source
288
2.00G
    {
289
2.00G
        return ob->ob_type;
290
2.00G
    }
Unexecuted instantiation: boolobject.c:_Py_TYPE
bytes_methods.c:_Py_TYPE
Line
Count
Source
288
1.00M
    {
289
1.00M
        return ob->ob_type;
290
1.00M
    }
bytearrayobject.c:_Py_TYPE
Line
Count
Source
288
3.18M
    {
289
3.18M
        return ob->ob_type;
290
3.18M
    }
capsule.c:_Py_TYPE
Line
Count
Source
288
15.3k
    {
289
15.3k
        return ob->ob_type;
290
15.3k
    }
cellobject.c:_Py_TYPE
Line
Count
Source
288
3.37k
    {
289
3.37k
        return ob->ob_type;
290
3.37k
    }
classobject.c:_Py_TYPE
Line
Count
Source
288
22.6M
    {
289
22.6M
        return ob->ob_type;
290
22.6M
    }
codeobject.c:_Py_TYPE
Line
Count
Source
288
1.68M
    {
289
1.68M
        return ob->ob_type;
290
1.68M
    }
complexobject.c:_Py_TYPE
Line
Count
Source
288
10.5k
    {
289
10.5k
        return ob->ob_type;
290
10.5k
    }
descrobject.c:_Py_TYPE
Line
Count
Source
288
882M
    {
289
882M
        return ob->ob_type;
290
882M
    }
enumobject.c:_Py_TYPE
Line
Count
Source
288
171M
    {
289
171M
        return ob->ob_type;
290
171M
    }
genobject.c:_Py_TYPE
Line
Count
Source
288
54.4M
    {
289
54.4M
        return ob->ob_type;
290
54.4M
    }
fileobject.c:_Py_TYPE
Line
Count
Source
288
1.00k
    {
289
1.00k
        return ob->ob_type;
290
1.00k
    }
frameobject.c:_Py_TYPE
Line
Count
Source
288
32
    {
289
32
        return ob->ob_type;
290
32
    }
funcobject.c:_Py_TYPE
Line
Count
Source
288
28.7k
    {
289
28.7k
        return ob->ob_type;
290
28.7k
    }
Unexecuted instantiation: interpolationobject.c:_Py_TYPE
iterobject.c:_Py_TYPE
Line
Count
Source
288
2.93M
    {
289
2.93M
        return ob->ob_type;
290
2.93M
    }
odictobject.c:_Py_TYPE
Line
Count
Source
288
8
    {
289
8
        return ob->ob_type;
290
8
    }
methodobject.c:_Py_TYPE
Line
Count
Source
288
4.20k
    {
289
4.20k
        return ob->ob_type;
290
4.20k
    }
namespaceobject.c:_Py_TYPE
Line
Count
Source
288
222
    {
289
222
        return ob->ob_type;
290
222
    }
Unexecuted instantiation: _contextvars.c:_Py_TYPE
Python-ast.c:_Py_TYPE
Line
Count
Source
288
1.27M
    {
289
1.27M
        return ob->ob_type;
290
1.27M
    }
Unexecuted instantiation: Python-tokenize.c:_Py_TYPE
Unexecuted instantiation: asdl.c:_Py_TYPE
Unexecuted instantiation: assemble.c:_Py_TYPE
ast.c:_Py_TYPE
Line
Count
Source
288
11.4k
    {
289
11.4k
        return ob->ob_type;
290
11.4k
    }
ast_preprocess.c:_Py_TYPE
Line
Count
Source
288
495
    {
289
495
        return ob->ob_type;
290
495
    }
Unexecuted instantiation: ast_unparse.c:_Py_TYPE
Unexecuted instantiation: critical_section.c:_Py_TYPE
crossinterp.c:_Py_TYPE
Line
Count
Source
288
16
    {
289
16
        return ob->ob_type;
290
16
    }
Unexecuted instantiation: getcopyright.c:_Py_TYPE
Unexecuted instantiation: getplatform.c:_Py_TYPE
Unexecuted instantiation: getversion.c:_Py_TYPE
Unexecuted instantiation: optimizer.c:_Py_TYPE
Unexecuted instantiation: pathconfig.c:_Py_TYPE
Unexecuted instantiation: structmember.c:_Py_TYPE
pegen.c:_Py_TYPE
Line
Count
Source
288
69.2k
    {
289
69.2k
        return ob->ob_type;
290
69.2k
    }
Unexecuted instantiation: pegen_errors.c:_Py_TYPE
Unexecuted instantiation: parser.c:_Py_TYPE
Unexecuted instantiation: buffer.c:_Py_TYPE
Unexecuted instantiation: lexer.c:_Py_TYPE
Unexecuted instantiation: state.c:_Py_TYPE
Unexecuted instantiation: readline_tokenizer.c:_Py_TYPE
Unexecuted instantiation: string_tokenizer.c:_Py_TYPE
Unexecuted instantiation: utf8_tokenizer.c:_Py_TYPE
Unexecuted instantiation: getcompiler.c:_Py_TYPE
Unexecuted instantiation: mystrtoul.c:_Py_TYPE
Unexecuted instantiation: token.c:_Py_TYPE
action_helpers.c:_Py_TYPE
Line
Count
Source
288
165k
    {
289
165k
        return ob->ob_type;
290
165k
    }
Unexecuted instantiation: string_parser.c:_Py_TYPE
291
    #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
292
32.2G
    #   define Py_TYPE(ob) _Py_TYPE(_PyObject_CAST(ob))
293
    #else
294
    #   define Py_TYPE(ob) _Py_TYPE(ob)
295
    #endif
296
#endif
297
298
PyAPI_DATA(PyTypeObject) PyLong_Type;
299
PyAPI_DATA(PyTypeObject) PyBool_Type;
300
301
#ifndef _Py_OPAQUE_PYOBJECT
302
// bpo-39573: The Py_SET_SIZE() function must be used to set an object size.
303
6.35G
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
6.35G
    assert(Py_TYPE(ob) != &PyLong_Type);
305
6.35G
    assert(Py_TYPE(ob) != &PyBool_Type);
306
6.35G
    return  _PyVarObject_CAST(ob)->ob_size;
307
6.35G
}
bytesobject.c:Py_SIZE
Line
Count
Source
303
26.7M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
26.7M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
26.7M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
26.7M
    return  _PyVarObject_CAST(ob)->ob_size;
307
26.7M
}
call.c:Py_SIZE
Line
Count
Source
303
81.4M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
81.4M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
81.4M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
81.4M
    return  _PyVarObject_CAST(ob)->ob_size;
307
81.4M
}
exceptions.c:Py_SIZE
Line
Count
Source
303
11.5M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
11.5M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
11.5M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
11.5M
    return  _PyVarObject_CAST(ob)->ob_size;
307
11.5M
}
genericaliasobject.c:Py_SIZE
Line
Count
Source
303
4
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
4
    assert(Py_TYPE(ob) != &PyLong_Type);
305
4
    assert(Py_TYPE(ob) != &PyBool_Type);
306
4
    return  _PyVarObject_CAST(ob)->ob_size;
307
4
}
floatobject.c:Py_SIZE
Line
Count
Source
303
553k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
553k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
553k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
553k
    return  _PyVarObject_CAST(ob)->ob_size;
307
553k
}
listobject.c:Py_SIZE
Line
Count
Source
303
1.93G
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.93G
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.93G
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.93G
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.93G
}
longobject.c:Py_SIZE
Line
Count
Source
303
6.94k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
6.94k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
6.94k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
6.94k
    return  _PyVarObject_CAST(ob)->ob_size;
307
6.94k
}
dictobject.c:Py_SIZE
Line
Count
Source
303
85.7k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
85.7k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
85.7k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
85.7k
    return  _PyVarObject_CAST(ob)->ob_size;
307
85.7k
}
memoryobject.c:Py_SIZE
Line
Count
Source
303
772
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
772
    assert(Py_TYPE(ob) != &PyLong_Type);
305
772
    assert(Py_TYPE(ob) != &PyBool_Type);
306
772
    return  _PyVarObject_CAST(ob)->ob_size;
307
772
}
moduleobject.c:Py_SIZE
Line
Count
Source
303
958
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
958
    assert(Py_TYPE(ob) != &PyLong_Type);
305
958
    assert(Py_TYPE(ob) != &PyBool_Type);
306
958
    return  _PyVarObject_CAST(ob)->ob_size;
307
958
}
object.c:Py_SIZE
Line
Count
Source
303
7.51M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
7.51M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
7.51M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
7.51M
    return  _PyVarObject_CAST(ob)->ob_size;
307
7.51M
}
Unexecuted instantiation: obmalloc.c:Py_SIZE
Unexecuted instantiation: picklebufobject.c:Py_SIZE
Unexecuted instantiation: rangeobject.c:Py_SIZE
Unexecuted instantiation: setobject.c:Py_SIZE
Unexecuted instantiation: sliceobject.c:Py_SIZE
structseq.c:Py_SIZE
Line
Count
Source
303
4.63k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
4.63k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
4.63k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
4.63k
    return  _PyVarObject_CAST(ob)->ob_size;
307
4.63k
}
Unexecuted instantiation: templateobject.c:Py_SIZE
tupleobject.c:Py_SIZE
Line
Count
Source
303
1.41G
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.41G
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.41G
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.41G
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.41G
}
typeobject.c:Py_SIZE
Line
Count
Source
303
631M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
631M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
631M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
631M
    return  _PyVarObject_CAST(ob)->ob_size;
307
631M
}
Unexecuted instantiation: typevarobject.c:Py_SIZE
unicodeobject.c:Py_SIZE
Line
Count
Source
303
82.7M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
82.7M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
82.7M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
82.7M
    return  _PyVarObject_CAST(ob)->ob_size;
307
82.7M
}
Unexecuted instantiation: unicodectype.c:Py_SIZE
unionobject.c:Py_SIZE
Line
Count
Source
303
463
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
463
    assert(Py_TYPE(ob) != &PyLong_Type);
305
463
    assert(Py_TYPE(ob) != &PyBool_Type);
306
463
    return  _PyVarObject_CAST(ob)->ob_size;
307
463
}
Unexecuted instantiation: weakrefobject.c:Py_SIZE
_warnings.c:Py_SIZE
Line
Count
Source
303
31.8k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
31.8k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
31.8k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
31.8k
    return  _PyVarObject_CAST(ob)->ob_size;
307
31.8k
}
bltinmodule.c:Py_SIZE
Line
Count
Source
303
2.68M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
2.68M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
2.68M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
2.68M
    return  _PyVarObject_CAST(ob)->ob_size;
307
2.68M
}
ceval.c:Py_SIZE
Line
Count
Source
303
1.82G
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.82G
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.82G
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.82G
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.82G
}
codecs.c:Py_SIZE
Line
Count
Source
303
999k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
999k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
999k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
999k
    return  _PyVarObject_CAST(ob)->ob_size;
307
999k
}
codegen.c:Py_SIZE
Line
Count
Source
303
703
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
703
    assert(Py_TYPE(ob) != &PyLong_Type);
305
703
    assert(Py_TYPE(ob) != &PyBool_Type);
306
703
    return  _PyVarObject_CAST(ob)->ob_size;
307
703
}
compile.c:Py_SIZE
Line
Count
Source
303
38.8k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
38.8k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
38.8k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
38.8k
    return  _PyVarObject_CAST(ob)->ob_size;
307
38.8k
}
Unexecuted instantiation: context.c:Py_SIZE
Unexecuted instantiation: errors.c:Py_SIZE
flowgraph.c:Py_SIZE
Line
Count
Source
303
114k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
114k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
114k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
114k
    return  _PyVarObject_CAST(ob)->ob_size;
307
114k
}
Unexecuted instantiation: frame.c:Py_SIZE
Unexecuted instantiation: future.c:Py_SIZE
gc.c:Py_SIZE
Line
Count
Source
303
240k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
240k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
240k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
240k
    return  _PyVarObject_CAST(ob)->ob_size;
307
240k
}
Unexecuted instantiation: gc_gil.c:Py_SIZE
getargs.c:Py_SIZE
Line
Count
Source
303
3.13M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
3.13M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
3.13M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
3.13M
    return  _PyVarObject_CAST(ob)->ob_size;
307
3.13M
}
Unexecuted instantiation: ceval_gil.c:Py_SIZE
Unexecuted instantiation: hamt.c:Py_SIZE
Unexecuted instantiation: hashtable.c:Py_SIZE
import.c:Py_SIZE
Line
Count
Source
303
112
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
112
    assert(Py_TYPE(ob) != &PyLong_Type);
305
112
    assert(Py_TYPE(ob) != &PyBool_Type);
306
112
    return  _PyVarObject_CAST(ob)->ob_size;
307
112
}
Unexecuted instantiation: importdl.c:Py_SIZE
initconfig.c:Py_SIZE
Line
Count
Source
303
64
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
64
    assert(Py_TYPE(ob) != &PyLong_Type);
305
64
    assert(Py_TYPE(ob) != &PyBool_Type);
306
64
    return  _PyVarObject_CAST(ob)->ob_size;
307
64
}
Unexecuted instantiation: instrumentation.c:Py_SIZE
Unexecuted instantiation: instruction_sequence.c:Py_SIZE
intrinsics.c:Py_SIZE
Line
Count
Source
303
14.5M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
14.5M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
14.5M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
14.5M
    return  _PyVarObject_CAST(ob)->ob_size;
307
14.5M
}
Unexecuted instantiation: legacy_tracing.c:Py_SIZE
Unexecuted instantiation: lock.c:Py_SIZE
marshal.c:Py_SIZE
Line
Count
Source
303
320k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
320k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
320k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
320k
    return  _PyVarObject_CAST(ob)->ob_size;
307
320k
}
Unexecuted instantiation: modsupport.c:Py_SIZE
Unexecuted instantiation: mysnprintf.c:Py_SIZE
Unexecuted instantiation: parking_lot.c:Py_SIZE
Unexecuted instantiation: preconfig.c:Py_SIZE
Unexecuted instantiation: pyarena.c:Py_SIZE
Unexecuted instantiation: pyctype.c:Py_SIZE
Unexecuted instantiation: pyhash.c:Py_SIZE
Unexecuted instantiation: pylifecycle.c:Py_SIZE
Unexecuted instantiation: pymath.c:Py_SIZE
Unexecuted instantiation: pystate.c:Py_SIZE
pythonrun.c:Py_SIZE
Line
Count
Source
303
22.7k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
22.7k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
22.7k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
22.7k
    return  _PyVarObject_CAST(ob)->ob_size;
307
22.7k
}
Unexecuted instantiation: pytime.c:Py_SIZE
Unexecuted instantiation: qsbr.c:Py_SIZE
Unexecuted instantiation: bootstrap_hash.c:Py_SIZE
specialize.c:Py_SIZE
Line
Count
Source
303
12.5k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
12.5k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
12.5k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
12.5k
    return  _PyVarObject_CAST(ob)->ob_size;
307
12.5k
}
symtable.c:Py_SIZE
Line
Count
Source
303
45.1k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
45.1k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
45.1k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
45.1k
    return  _PyVarObject_CAST(ob)->ob_size;
307
45.1k
}
Unexecuted instantiation: sysmodule.c:Py_SIZE
Unexecuted instantiation: thread.c:Py_SIZE
Unexecuted instantiation: traceback.c:Py_SIZE
Unexecuted instantiation: tracemalloc.c:Py_SIZE
Unexecuted instantiation: getopt.c:Py_SIZE
Unexecuted instantiation: pystrcmp.c:Py_SIZE
Unexecuted instantiation: pystrtod.c:Py_SIZE
Unexecuted instantiation: pystrhex.c:Py_SIZE
Unexecuted instantiation: dtoa.c:Py_SIZE
Unexecuted instantiation: formatter_unicode.c:Py_SIZE
Unexecuted instantiation: fileutils.c:Py_SIZE
Unexecuted instantiation: suggestions.c:Py_SIZE
Unexecuted instantiation: perf_trampoline.c:Py_SIZE
Unexecuted instantiation: perf_jit_trampoline.c:Py_SIZE
Unexecuted instantiation: remote_debugging.c:Py_SIZE
Unexecuted instantiation: dynload_shlib.c:Py_SIZE
Unexecuted instantiation: config.c:Py_SIZE
Unexecuted instantiation: gcmodule.c:Py_SIZE
Unexecuted instantiation: _asynciomodule.c:Py_SIZE
Unexecuted instantiation: atexitmodule.c:Py_SIZE
Unexecuted instantiation: faulthandler.c:Py_SIZE
posixmodule.c:Py_SIZE
Line
Count
Source
303
5.77k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
5.77k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
5.77k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
5.77k
    return  _PyVarObject_CAST(ob)->ob_size;
307
5.77k
}
Unexecuted instantiation: signalmodule.c:Py_SIZE
Unexecuted instantiation: _tracemalloc.c:Py_SIZE
Unexecuted instantiation: _suggestions.c:Py_SIZE
Unexecuted instantiation: _datetimemodule.c:Py_SIZE
Unexecuted instantiation: _codecsmodule.c:Py_SIZE
_collectionsmodule.c:Py_SIZE
Line
Count
Source
303
160M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
160M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
160M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
160M
    return  _PyVarObject_CAST(ob)->ob_size;
307
160M
}
Unexecuted instantiation: errnomodule.c:Py_SIZE
Unexecuted instantiation: _iomodule.c:Py_SIZE
Unexecuted instantiation: iobase.c:Py_SIZE
fileio.c:Py_SIZE
Line
Count
Source
303
2.29k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
2.29k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
2.29k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
2.29k
    return  _PyVarObject_CAST(ob)->ob_size;
307
2.29k
}
bytesio.c:Py_SIZE
Line
Count
Source
303
28.3k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
28.3k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
28.3k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
28.3k
    return  _PyVarObject_CAST(ob)->ob_size;
307
28.3k
}
bufferedio.c:Py_SIZE
Line
Count
Source
303
1.05k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.05k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.05k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.05k
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.05k
}
textio.c:Py_SIZE
Line
Count
Source
303
16.1k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
16.1k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
16.1k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
16.1k
    return  _PyVarObject_CAST(ob)->ob_size;
307
16.1k
}
stringio.c:Py_SIZE
Line
Count
Source
303
32.2k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
32.2k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
32.2k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
32.2k
    return  _PyVarObject_CAST(ob)->ob_size;
307
32.2k
}
itertoolsmodule.c:Py_SIZE
Line
Count
Source
303
928
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
928
    assert(Py_TYPE(ob) != &PyLong_Type);
305
928
    assert(Py_TYPE(ob) != &PyBool_Type);
306
928
    return  _PyVarObject_CAST(ob)->ob_size;
307
928
}
sre.c:Py_SIZE
Line
Count
Source
303
60.6M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
60.6M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
60.6M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
60.6M
    return  _PyVarObject_CAST(ob)->ob_size;
307
60.6M
}
Unexecuted instantiation: _sysconfig.c:Py_SIZE
Unexecuted instantiation: _threadmodule.c:Py_SIZE
Unexecuted instantiation: timemodule.c:Py_SIZE
Unexecuted instantiation: _typesmodule.c:Py_SIZE
Unexecuted instantiation: _typingmodule.c:Py_SIZE
Unexecuted instantiation: _weakref.c:Py_SIZE
_abc.c:Py_SIZE
Line
Count
Source
303
19.3k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
19.3k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
19.3k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
19.3k
    return  _PyVarObject_CAST(ob)->ob_size;
307
19.3k
}
_functoolsmodule.c:Py_SIZE
Line
Count
Source
303
34.0k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
34.0k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
34.0k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
34.0k
    return  _PyVarObject_CAST(ob)->ob_size;
307
34.0k
}
Unexecuted instantiation: _localemodule.c:Py_SIZE
Unexecuted instantiation: _opcode.c:Py_SIZE
_operator.c:Py_SIZE
Line
Count
Source
303
1.36M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.36M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.36M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.36M
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.36M
}
Unexecuted instantiation: _stat.c:Py_SIZE
Unexecuted instantiation: symtablemodule.c:Py_SIZE
Unexecuted instantiation: pwdmodule.c:Py_SIZE
getpath.c:Py_SIZE
Line
Count
Source
303
144
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
144
    assert(Py_TYPE(ob) != &PyLong_Type);
305
144
    assert(Py_TYPE(ob) != &PyBool_Type);
306
144
    return  _PyVarObject_CAST(ob)->ob_size;
307
144
}
Unexecuted instantiation: frozen.c:Py_SIZE
Unexecuted instantiation: getbuildinfo.c:Py_SIZE
Unexecuted instantiation: peg_api.c:Py_SIZE
Unexecuted instantiation: file_tokenizer.c:Py_SIZE
Unexecuted instantiation: helpers.c:Py_SIZE
Unexecuted instantiation: myreadline.c:Py_SIZE
abstract.c:Py_SIZE
Line
Count
Source
303
122k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
122k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
122k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
122k
    return  _PyVarObject_CAST(ob)->ob_size;
307
122k
}
Unexecuted instantiation: boolobject.c:Py_SIZE
bytes_methods.c:Py_SIZE
Line
Count
Source
303
501k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
501k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
501k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
501k
    return  _PyVarObject_CAST(ob)->ob_size;
307
501k
}
bytearrayobject.c:Py_SIZE
Line
Count
Source
303
70.0M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
70.0M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
70.0M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
70.0M
    return  _PyVarObject_CAST(ob)->ob_size;
307
70.0M
}
Unexecuted instantiation: capsule.c:Py_SIZE
Unexecuted instantiation: cellobject.c:Py_SIZE
Unexecuted instantiation: classobject.c:Py_SIZE
codeobject.c:Py_SIZE
Line
Count
Source
303
1.91M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
1.91M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
1.91M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
1.91M
    return  _PyVarObject_CAST(ob)->ob_size;
307
1.91M
}
Unexecuted instantiation: complexobject.c:Py_SIZE
descrobject.c:Py_SIZE
Line
Count
Source
303
14.1M
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
14.1M
    assert(Py_TYPE(ob) != &PyLong_Type);
305
14.1M
    assert(Py_TYPE(ob) != &PyBool_Type);
306
14.1M
    return  _PyVarObject_CAST(ob)->ob_size;
307
14.1M
}
Unexecuted instantiation: enumobject.c:Py_SIZE
Unexecuted instantiation: genobject.c:Py_SIZE
Unexecuted instantiation: fileobject.c:Py_SIZE
frameobject.c:Py_SIZE
Line
Count
Source
303
16
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
16
    assert(Py_TYPE(ob) != &PyLong_Type);
305
16
    assert(Py_TYPE(ob) != &PyBool_Type);
306
16
    return  _PyVarObject_CAST(ob)->ob_size;
307
16
}
Unexecuted instantiation: funcobject.c:Py_SIZE
Unexecuted instantiation: interpolationobject.c:Py_SIZE
Unexecuted instantiation: iterobject.c:Py_SIZE
odictobject.c:Py_SIZE
Line
Count
Source
303
16
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
16
    assert(Py_TYPE(ob) != &PyLong_Type);
305
16
    assert(Py_TYPE(ob) != &PyBool_Type);
306
16
    return  _PyVarObject_CAST(ob)->ob_size;
307
16
}
Unexecuted instantiation: methodobject.c:Py_SIZE
Unexecuted instantiation: namespaceobject.c:Py_SIZE
Unexecuted instantiation: _contextvars.c:Py_SIZE
Python-ast.c:Py_SIZE
Line
Count
Source
303
140
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
140
    assert(Py_TYPE(ob) != &PyLong_Type);
305
140
    assert(Py_TYPE(ob) != &PyBool_Type);
306
140
    return  _PyVarObject_CAST(ob)->ob_size;
307
140
}
Unexecuted instantiation: Python-tokenize.c:Py_SIZE
Unexecuted instantiation: asdl.c:Py_SIZE
assemble.c:Py_SIZE
Line
Count
Source
303
592k
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
592k
    assert(Py_TYPE(ob) != &PyLong_Type);
305
592k
    assert(Py_TYPE(ob) != &PyBool_Type);
306
592k
    return  _PyVarObject_CAST(ob)->ob_size;
307
592k
}
Unexecuted instantiation: ast.c:Py_SIZE
Unexecuted instantiation: ast_preprocess.c:Py_SIZE
Unexecuted instantiation: ast_unparse.c:Py_SIZE
Unexecuted instantiation: critical_section.c:Py_SIZE
Unexecuted instantiation: crossinterp.c:Py_SIZE
Unexecuted instantiation: getcopyright.c:Py_SIZE
Unexecuted instantiation: getplatform.c:Py_SIZE
Unexecuted instantiation: getversion.c:Py_SIZE
Unexecuted instantiation: optimizer.c:Py_SIZE
Unexecuted instantiation: pathconfig.c:Py_SIZE
Unexecuted instantiation: structmember.c:Py_SIZE
Unexecuted instantiation: pegen.c:Py_SIZE
Unexecuted instantiation: pegen_errors.c:Py_SIZE
Unexecuted instantiation: parser.c:Py_SIZE
Unexecuted instantiation: buffer.c:Py_SIZE
lexer.c:Py_SIZE
Line
Count
Source
303
476
static inline Py_ssize_t Py_SIZE(PyObject *ob) {
304
476
    assert(Py_TYPE(ob) != &PyLong_Type);
305
476
    assert(Py_TYPE(ob) != &PyBool_Type);
306
476
    return  _PyVarObject_CAST(ob)->ob_size;
307
476
}
Unexecuted instantiation: state.c:Py_SIZE
Unexecuted instantiation: readline_tokenizer.c:Py_SIZE
Unexecuted instantiation: string_tokenizer.c:Py_SIZE
Unexecuted instantiation: utf8_tokenizer.c:Py_SIZE
Unexecuted instantiation: getcompiler.c:Py_SIZE
Unexecuted instantiation: mystrtoul.c:Py_SIZE
Unexecuted instantiation: token.c:Py_SIZE
Unexecuted instantiation: action_helpers.c:Py_SIZE
Unexecuted instantiation: string_parser.c:Py_SIZE
308
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
309
6.29G
#  define Py_SIZE(ob) Py_SIZE(_PyObject_CAST(ob))
310
#endif
311
#endif // !defined(_Py_OPAQUE_PYOBJECT)
312
313
13.1G
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
13.1G
    return Py_TYPE(ob) == type;
315
13.1G
}
bytesobject.c:Py_IS_TYPE
Line
Count
Source
313
7.37M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
7.37M
    return Py_TYPE(ob) == type;
315
7.37M
}
Unexecuted instantiation: call.c:Py_IS_TYPE
exceptions.c:Py_IS_TYPE
Line
Count
Source
313
35.4M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
35.4M
    return Py_TYPE(ob) == type;
315
35.4M
}
Unexecuted instantiation: genericaliasobject.c:Py_IS_TYPE
floatobject.c:Py_IS_TYPE
Line
Count
Source
313
13.8M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
13.8M
    return Py_TYPE(ob) == type;
315
13.8M
}
listobject.c:Py_IS_TYPE
Line
Count
Source
313
419M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
419M
    return Py_TYPE(ob) == type;
315
419M
}
longobject.c:Py_IS_TYPE
Line
Count
Source
313
938M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
938M
    return Py_TYPE(ob) == type;
315
938M
}
dictobject.c:Py_IS_TYPE
Line
Count
Source
313
3.03G
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
3.03G
    return Py_TYPE(ob) == type;
315
3.03G
}
memoryobject.c:Py_IS_TYPE
Line
Count
Source
313
1.54k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.54k
    return Py_TYPE(ob) == type;
315
1.54k
}
moduleobject.c:Py_IS_TYPE
Line
Count
Source
313
24.8M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
24.8M
    return Py_TYPE(ob) == type;
315
24.8M
}
object.c:Py_IS_TYPE
Line
Count
Source
313
440M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
440M
    return Py_TYPE(ob) == type;
315
440M
}
Unexecuted instantiation: obmalloc.c:Py_IS_TYPE
Unexecuted instantiation: picklebufobject.c:Py_IS_TYPE
rangeobject.c:Py_IS_TYPE
Line
Count
Source
313
519
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
519
    return Py_TYPE(ob) == type;
315
519
}
setobject.c:Py_IS_TYPE
Line
Count
Source
313
51.0M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
51.0M
    return Py_TYPE(ob) == type;
315
51.0M
}
sliceobject.c:Py_IS_TYPE
Line
Count
Source
313
760
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
760
    return Py_TYPE(ob) == type;
315
760
}
Unexecuted instantiation: structseq.c:Py_IS_TYPE
Unexecuted instantiation: templateobject.c:Py_IS_TYPE
tupleobject.c:Py_IS_TYPE
Line
Count
Source
313
483M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
483M
    return Py_TYPE(ob) == type;
315
483M
}
typeobject.c:Py_IS_TYPE
Line
Count
Source
313
195M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
195M
    return Py_TYPE(ob) == type;
315
195M
}
Unexecuted instantiation: typevarobject.c:Py_IS_TYPE
unicodeobject.c:Py_IS_TYPE
Line
Count
Source
313
501M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
501M
    return Py_TYPE(ob) == type;
315
501M
}
Unexecuted instantiation: unicodectype.c:Py_IS_TYPE
unionobject.c:Py_IS_TYPE
Line
Count
Source
313
475
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
475
    return Py_TYPE(ob) == type;
315
475
}
weakrefobject.c:Py_IS_TYPE
Line
Count
Source
313
604k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
604k
    return Py_TYPE(ob) == type;
315
604k
}
_warnings.c:Py_IS_TYPE
Line
Count
Source
313
18.1k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
18.1k
    return Py_TYPE(ob) == type;
315
18.1k
}
bltinmodule.c:Py_IS_TYPE
Line
Count
Source
313
37.7M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
37.7M
    return Py_TYPE(ob) == type;
315
37.7M
}
ceval.c:Py_IS_TYPE
Line
Count
Source
313
5.88G
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
5.88G
    return Py_TYPE(ob) == type;
315
5.88G
}
codecs.c:Py_IS_TYPE
Line
Count
Source
313
1.58M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.58M
    return Py_TYPE(ob) == type;
315
1.58M
}
codegen.c:Py_IS_TYPE
Line
Count
Source
313
48
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
48
    return Py_TYPE(ob) == type;
315
48
}
compile.c:Py_IS_TYPE
Line
Count
Source
313
164k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
164k
    return Py_TYPE(ob) == type;
315
164k
}
context.c:Py_IS_TYPE
Line
Count
Source
313
15.9k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
15.9k
    return Py_TYPE(ob) == type;
315
15.9k
}
Unexecuted instantiation: errors.c:Py_IS_TYPE
flowgraph.c:Py_IS_TYPE
Line
Count
Source
313
67.7k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
67.7k
    return Py_TYPE(ob) == type;
315
67.7k
}
Unexecuted instantiation: frame.c:Py_IS_TYPE
Unexecuted instantiation: future.c:Py_IS_TYPE
gc.c:Py_IS_TYPE
Line
Count
Source
313
178M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
178M
    return Py_TYPE(ob) == type;
315
178M
}
Unexecuted instantiation: gc_gil.c:Py_IS_TYPE
getargs.c:Py_IS_TYPE
Line
Count
Source
313
11.1M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
11.1M
    return Py_TYPE(ob) == type;
315
11.1M
}
Unexecuted instantiation: ceval_gil.c:Py_IS_TYPE
Unexecuted instantiation: hamt.c:Py_IS_TYPE
Unexecuted instantiation: hashtable.c:Py_IS_TYPE
import.c:Py_IS_TYPE
Line
Count
Source
313
1.16k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.16k
    return Py_TYPE(ob) == type;
315
1.16k
}
importdl.c:Py_IS_TYPE
Line
Count
Source
313
766
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
766
    return Py_TYPE(ob) == type;
315
766
}
initconfig.c:Py_IS_TYPE
Line
Count
Source
313
128
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
128
    return Py_TYPE(ob) == type;
315
128
}
Unexecuted instantiation: instrumentation.c:Py_IS_TYPE
Unexecuted instantiation: instruction_sequence.c:Py_IS_TYPE
intrinsics.c:Py_IS_TYPE
Line
Count
Source
313
13.6k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
13.6k
    return Py_TYPE(ob) == type;
315
13.6k
}
Unexecuted instantiation: legacy_tracing.c:Py_IS_TYPE
Unexecuted instantiation: lock.c:Py_IS_TYPE
marshal.c:Py_IS_TYPE
Line
Count
Source
313
485k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
485k
    return Py_TYPE(ob) == type;
315
485k
}
modsupport.c:Py_IS_TYPE
Line
Count
Source
313
8.95k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
8.95k
    return Py_TYPE(ob) == type;
315
8.95k
}
Unexecuted instantiation: mysnprintf.c:Py_IS_TYPE
Unexecuted instantiation: parking_lot.c:Py_IS_TYPE
Unexecuted instantiation: preconfig.c:Py_IS_TYPE
Unexecuted instantiation: pyarena.c:Py_IS_TYPE
Unexecuted instantiation: pyctype.c:Py_IS_TYPE
Unexecuted instantiation: pyhash.c:Py_IS_TYPE
Unexecuted instantiation: pylifecycle.c:Py_IS_TYPE
Unexecuted instantiation: pymath.c:Py_IS_TYPE
Unexecuted instantiation: pystate.c:Py_IS_TYPE
Unexecuted instantiation: pythonrun.c:Py_IS_TYPE
Unexecuted instantiation: pytime.c:Py_IS_TYPE
Unexecuted instantiation: qsbr.c:Py_IS_TYPE
Unexecuted instantiation: bootstrap_hash.c:Py_IS_TYPE
specialize.c:Py_IS_TYPE
Line
Count
Source
313
19.7M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
19.7M
    return Py_TYPE(ob) == type;
315
19.7M
}
Unexecuted instantiation: symtable.c:Py_IS_TYPE
sysmodule.c:Py_IS_TYPE
Line
Count
Source
313
666
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
666
    return Py_TYPE(ob) == type;
315
666
}
Unexecuted instantiation: thread.c:Py_IS_TYPE
traceback.c:Py_IS_TYPE
Line
Count
Source
313
35.5M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
35.5M
    return Py_TYPE(ob) == type;
315
35.5M
}
Unexecuted instantiation: tracemalloc.c:Py_IS_TYPE
Unexecuted instantiation: getopt.c:Py_IS_TYPE
Unexecuted instantiation: pystrcmp.c:Py_IS_TYPE
Unexecuted instantiation: pystrtod.c:Py_IS_TYPE
Unexecuted instantiation: pystrhex.c:Py_IS_TYPE
Unexecuted instantiation: dtoa.c:Py_IS_TYPE
formatter_unicode.c:Py_IS_TYPE
Line
Count
Source
313
15.7M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
15.7M
    return Py_TYPE(ob) == type;
315
15.7M
}
Unexecuted instantiation: fileutils.c:Py_IS_TYPE
Unexecuted instantiation: suggestions.c:Py_IS_TYPE
Unexecuted instantiation: perf_trampoline.c:Py_IS_TYPE
Unexecuted instantiation: perf_jit_trampoline.c:Py_IS_TYPE
Unexecuted instantiation: remote_debugging.c:Py_IS_TYPE
Unexecuted instantiation: dynload_shlib.c:Py_IS_TYPE
Unexecuted instantiation: config.c:Py_IS_TYPE
Unexecuted instantiation: gcmodule.c:Py_IS_TYPE
Unexecuted instantiation: _asynciomodule.c:Py_IS_TYPE
Unexecuted instantiation: atexitmodule.c:Py_IS_TYPE
Unexecuted instantiation: faulthandler.c:Py_IS_TYPE
Unexecuted instantiation: posixmodule.c:Py_IS_TYPE
Unexecuted instantiation: signalmodule.c:Py_IS_TYPE
Unexecuted instantiation: _tracemalloc.c:Py_IS_TYPE
Unexecuted instantiation: _suggestions.c:Py_IS_TYPE
_datetimemodule.c:Py_IS_TYPE
Line
Count
Source
313
6
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
6
    return Py_TYPE(ob) == type;
315
6
}
Unexecuted instantiation: _codecsmodule.c:Py_IS_TYPE
Unexecuted instantiation: _collectionsmodule.c:Py_IS_TYPE
Unexecuted instantiation: errnomodule.c:Py_IS_TYPE
Unexecuted instantiation: _iomodule.c:Py_IS_TYPE
Unexecuted instantiation: iobase.c:Py_IS_TYPE
fileio.c:Py_IS_TYPE
Line
Count
Source
313
1.29k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.29k
    return Py_TYPE(ob) == type;
315
1.29k
}
bytesio.c:Py_IS_TYPE
Line
Count
Source
313
9.46k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
9.46k
    return Py_TYPE(ob) == type;
315
9.46k
}
bufferedio.c:Py_IS_TYPE
Line
Count
Source
313
2.10k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
2.10k
    return Py_TYPE(ob) == type;
315
2.10k
}
textio.c:Py_IS_TYPE
Line
Count
Source
313
128
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
128
    return Py_TYPE(ob) == type;
315
128
}
stringio.c:Py_IS_TYPE
Line
Count
Source
313
21.0M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
21.0M
    return Py_TYPE(ob) == type;
315
21.0M
}
Unexecuted instantiation: itertoolsmodule.c:Py_IS_TYPE
sre.c:Py_IS_TYPE
Line
Count
Source
313
102k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
102k
    return Py_TYPE(ob) == type;
315
102k
}
Unexecuted instantiation: _sysconfig.c:Py_IS_TYPE
Unexecuted instantiation: _threadmodule.c:Py_IS_TYPE
Unexecuted instantiation: timemodule.c:Py_IS_TYPE
Unexecuted instantiation: _typesmodule.c:Py_IS_TYPE
Unexecuted instantiation: _typingmodule.c:Py_IS_TYPE
_weakref.c:Py_IS_TYPE
Line
Count
Source
313
2.78k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
2.78k
    return Py_TYPE(ob) == type;
315
2.78k
}
_abc.c:Py_IS_TYPE
Line
Count
Source
313
992
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
992
    return Py_TYPE(ob) == type;
315
992
}
_functoolsmodule.c:Py_IS_TYPE
Line
Count
Source
313
45
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
45
    return Py_TYPE(ob) == type;
315
45
}
Unexecuted instantiation: _localemodule.c:Py_IS_TYPE
Unexecuted instantiation: _opcode.c:Py_IS_TYPE
_operator.c:Py_IS_TYPE
Line
Count
Source
313
1.36M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.36M
    return Py_TYPE(ob) == type;
315
1.36M
}
Unexecuted instantiation: _stat.c:Py_IS_TYPE
Unexecuted instantiation: symtablemodule.c:Py_IS_TYPE
Unexecuted instantiation: pwdmodule.c:Py_IS_TYPE
getpath.c:Py_IS_TYPE
Line
Count
Source
313
16
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
16
    return Py_TYPE(ob) == type;
315
16
}
Unexecuted instantiation: frozen.c:Py_IS_TYPE
Unexecuted instantiation: getbuildinfo.c:Py_IS_TYPE
Unexecuted instantiation: peg_api.c:Py_IS_TYPE
Unexecuted instantiation: file_tokenizer.c:Py_IS_TYPE
Unexecuted instantiation: helpers.c:Py_IS_TYPE
Unexecuted instantiation: myreadline.c:Py_IS_TYPE
abstract.c:Py_IS_TYPE
Line
Count
Source
313
193M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
193M
    return Py_TYPE(ob) == type;
315
193M
}
Unexecuted instantiation: boolobject.c:Py_IS_TYPE
Unexecuted instantiation: bytes_methods.c:Py_IS_TYPE
bytearrayobject.c:Py_IS_TYPE
Line
Count
Source
313
10.1k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
10.1k
    return Py_TYPE(ob) == type;
315
10.1k
}
capsule.c:Py_IS_TYPE
Line
Count
Source
313
15.3k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
15.3k
    return Py_TYPE(ob) == type;
315
15.3k
}
cellobject.c:Py_IS_TYPE
Line
Count
Source
313
3.37k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
3.37k
    return Py_TYPE(ob) == type;
315
3.37k
}
Unexecuted instantiation: classobject.c:Py_IS_TYPE
codeobject.c:Py_IS_TYPE
Line
Count
Source
313
1.33M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
1.33M
    return Py_TYPE(ob) == type;
315
1.33M
}
complexobject.c:Py_IS_TYPE
Line
Count
Source
313
10.5k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
10.5k
    return Py_TYPE(ob) == type;
315
10.5k
}
descrobject.c:Py_IS_TYPE
Line
Count
Source
313
505M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
505M
    return Py_TYPE(ob) == type;
315
505M
}
Unexecuted instantiation: enumobject.c:Py_IS_TYPE
genobject.c:Py_IS_TYPE
Line
Count
Source
313
54.4M
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
54.4M
    return Py_TYPE(ob) == type;
315
54.4M
}
Unexecuted instantiation: fileobject.c:Py_IS_TYPE
frameobject.c:Py_IS_TYPE
Line
Count
Source
313
16
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
16
    return Py_TYPE(ob) == type;
315
16
}
funcobject.c:Py_IS_TYPE
Line
Count
Source
313
66
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
66
    return Py_TYPE(ob) == type;
315
66
}
Unexecuted instantiation: interpolationobject.c:Py_IS_TYPE
Unexecuted instantiation: iterobject.c:Py_IS_TYPE
odictobject.c:Py_IS_TYPE
Line
Count
Source
313
8
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
8
    return Py_TYPE(ob) == type;
315
8
}
methodobject.c:Py_IS_TYPE
Line
Count
Source
313
4.12k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
4.12k
    return Py_TYPE(ob) == type;
315
4.12k
}
Unexecuted instantiation: namespaceobject.c:Py_IS_TYPE
Unexecuted instantiation: _contextvars.c:Py_IS_TYPE
Unexecuted instantiation: Python-ast.c:Py_IS_TYPE
Unexecuted instantiation: Python-tokenize.c:Py_IS_TYPE
Unexecuted instantiation: asdl.c:Py_IS_TYPE
Unexecuted instantiation: assemble.c:Py_IS_TYPE
ast.c:Py_IS_TYPE
Line
Count
Source
313
11.4k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
11.4k
    return Py_TYPE(ob) == type;
315
11.4k
}
Unexecuted instantiation: ast_preprocess.c:Py_IS_TYPE
Unexecuted instantiation: ast_unparse.c:Py_IS_TYPE
Unexecuted instantiation: critical_section.c:Py_IS_TYPE
Unexecuted instantiation: crossinterp.c:Py_IS_TYPE
Unexecuted instantiation: getcopyright.c:Py_IS_TYPE
Unexecuted instantiation: getplatform.c:Py_IS_TYPE
Unexecuted instantiation: getversion.c:Py_IS_TYPE
Unexecuted instantiation: optimizer.c:Py_IS_TYPE
Unexecuted instantiation: pathconfig.c:Py_IS_TYPE
Unexecuted instantiation: structmember.c:Py_IS_TYPE
pegen.c:Py_IS_TYPE
Line
Count
Source
313
13.2k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
13.2k
    return Py_TYPE(ob) == type;
315
13.2k
}
Unexecuted instantiation: pegen_errors.c:Py_IS_TYPE
Unexecuted instantiation: parser.c:Py_IS_TYPE
Unexecuted instantiation: buffer.c:Py_IS_TYPE
Unexecuted instantiation: lexer.c:Py_IS_TYPE
Unexecuted instantiation: state.c:Py_IS_TYPE
Unexecuted instantiation: readline_tokenizer.c:Py_IS_TYPE
Unexecuted instantiation: string_tokenizer.c:Py_IS_TYPE
Unexecuted instantiation: utf8_tokenizer.c:Py_IS_TYPE
Unexecuted instantiation: getcompiler.c:Py_IS_TYPE
Unexecuted instantiation: mystrtoul.c:Py_IS_TYPE
Unexecuted instantiation: token.c:Py_IS_TYPE
action_helpers.c:Py_IS_TYPE
Line
Count
Source
313
165k
static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
314
165k
    return Py_TYPE(ob) == type;
315
165k
}
Unexecuted instantiation: string_parser.c:Py_IS_TYPE
316
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
317
20.8G
#  define Py_IS_TYPE(ob, type) Py_IS_TYPE(_PyObject_CAST(ob), (type))
318
#endif
319
320
321
#ifndef _Py_OPAQUE_PYOBJECT
322
1.11G
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
1.11G
    ob->ob_type = type;
324
1.11G
}
bytesobject.c:Py_SET_TYPE
Line
Count
Source
322
20.9M
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
20.9M
    ob->ob_type = type;
324
20.9M
}
Unexecuted instantiation: call.c:Py_SET_TYPE
Unexecuted instantiation: exceptions.c:Py_SET_TYPE
Unexecuted instantiation: genericaliasobject.c:Py_SET_TYPE
floatobject.c:Py_SET_TYPE
Line
Count
Source
322
531k
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
531k
    ob->ob_type = type;
324
531k
}
Unexecuted instantiation: listobject.c:Py_SET_TYPE
longobject.c:Py_SET_TYPE
Line
Count
Source
322
119M
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
119M
    ob->ob_type = type;
324
119M
}
Unexecuted instantiation: dictobject.c:Py_SET_TYPE
Unexecuted instantiation: memoryobject.c:Py_SET_TYPE
moduleobject.c:Py_SET_TYPE
Line
Count
Source
322
447
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
447
    ob->ob_type = type;
324
447
}
object.c:Py_SET_TYPE
Line
Count
Source
322
45.7k
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
45.7k
    ob->ob_type = type;
324
45.7k
}
Unexecuted instantiation: obmalloc.c:Py_SET_TYPE
Unexecuted instantiation: picklebufobject.c:Py_SET_TYPE
Unexecuted instantiation: rangeobject.c:Py_SET_TYPE
Unexecuted instantiation: setobject.c:Py_SET_TYPE
Unexecuted instantiation: sliceobject.c:Py_SET_TYPE
structseq.c:Py_SET_TYPE
Line
Count
Source
322
128
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
128
    ob->ob_type = type;
324
128
}
Unexecuted instantiation: templateobject.c:Py_SET_TYPE
Unexecuted instantiation: tupleobject.c:Py_SET_TYPE
typeobject.c:Py_SET_TYPE
Line
Count
Source
322
116M
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
116M
    ob->ob_type = type;
324
116M
}
Unexecuted instantiation: typevarobject.c:Py_SET_TYPE
unicodeobject.c:Py_SET_TYPE
Line
Count
Source
322
503M
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
503M
    ob->ob_type = type;
324
503M
}
Unexecuted instantiation: unicodectype.c:Py_SET_TYPE
Unexecuted instantiation: unionobject.c:Py_SET_TYPE
Unexecuted instantiation: weakrefobject.c:Py_SET_TYPE
Unexecuted instantiation: _warnings.c:Py_SET_TYPE
Unexecuted instantiation: bltinmodule.c:Py_SET_TYPE
Unexecuted instantiation: ceval.c:Py_SET_TYPE
Unexecuted instantiation: codecs.c:Py_SET_TYPE
Unexecuted instantiation: codegen.c:Py_SET_TYPE
Unexecuted instantiation: compile.c:Py_SET_TYPE
Unexecuted instantiation: context.c:Py_SET_TYPE
Unexecuted instantiation: errors.c:Py_SET_TYPE
Unexecuted instantiation: flowgraph.c:Py_SET_TYPE
Unexecuted instantiation: frame.c:Py_SET_TYPE
Unexecuted instantiation: future.c:Py_SET_TYPE
gc.c:Py_SET_TYPE
Line
Count
Source
322
349M
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
349M
    ob->ob_type = type;
324
349M
}
Unexecuted instantiation: gc_gil.c:Py_SET_TYPE
Unexecuted instantiation: getargs.c:Py_SET_TYPE
Unexecuted instantiation: ceval_gil.c:Py_SET_TYPE
Unexecuted instantiation: hamt.c:Py_SET_TYPE
Unexecuted instantiation: hashtable.c:Py_SET_TYPE
Unexecuted instantiation: import.c:Py_SET_TYPE
Unexecuted instantiation: importdl.c:Py_SET_TYPE
Unexecuted instantiation: initconfig.c:Py_SET_TYPE
Unexecuted instantiation: instrumentation.c:Py_SET_TYPE
Unexecuted instantiation: instruction_sequence.c:Py_SET_TYPE
Unexecuted instantiation: intrinsics.c:Py_SET_TYPE
Unexecuted instantiation: legacy_tracing.c:Py_SET_TYPE
Unexecuted instantiation: lock.c:Py_SET_TYPE
Unexecuted instantiation: marshal.c:Py_SET_TYPE
Unexecuted instantiation: modsupport.c:Py_SET_TYPE
Unexecuted instantiation: mysnprintf.c:Py_SET_TYPE
Unexecuted instantiation: parking_lot.c:Py_SET_TYPE
Unexecuted instantiation: preconfig.c:Py_SET_TYPE
Unexecuted instantiation: pyarena.c:Py_SET_TYPE
Unexecuted instantiation: pyctype.c:Py_SET_TYPE
Unexecuted instantiation: pyhash.c:Py_SET_TYPE
Unexecuted instantiation: pylifecycle.c:Py_SET_TYPE
Unexecuted instantiation: pymath.c:Py_SET_TYPE
Unexecuted instantiation: pystate.c:Py_SET_TYPE
Unexecuted instantiation: pythonrun.c:Py_SET_TYPE
Unexecuted instantiation: pytime.c:Py_SET_TYPE
Unexecuted instantiation: qsbr.c:Py_SET_TYPE
Unexecuted instantiation: bootstrap_hash.c:Py_SET_TYPE
Unexecuted instantiation: specialize.c:Py_SET_TYPE
Unexecuted instantiation: symtable.c:Py_SET_TYPE
Unexecuted instantiation: sysmodule.c:Py_SET_TYPE
Unexecuted instantiation: thread.c:Py_SET_TYPE
Unexecuted instantiation: traceback.c:Py_SET_TYPE
Unexecuted instantiation: tracemalloc.c:Py_SET_TYPE
Unexecuted instantiation: getopt.c:Py_SET_TYPE
Unexecuted instantiation: pystrcmp.c:Py_SET_TYPE
Unexecuted instantiation: pystrtod.c:Py_SET_TYPE
Unexecuted instantiation: pystrhex.c:Py_SET_TYPE
Unexecuted instantiation: dtoa.c:Py_SET_TYPE
Unexecuted instantiation: formatter_unicode.c:Py_SET_TYPE
Unexecuted instantiation: fileutils.c:Py_SET_TYPE
Unexecuted instantiation: suggestions.c:Py_SET_TYPE
Unexecuted instantiation: perf_trampoline.c:Py_SET_TYPE
Unexecuted instantiation: perf_jit_trampoline.c:Py_SET_TYPE
Unexecuted instantiation: remote_debugging.c:Py_SET_TYPE
Unexecuted instantiation: dynload_shlib.c:Py_SET_TYPE
Unexecuted instantiation: config.c:Py_SET_TYPE
Unexecuted instantiation: gcmodule.c:Py_SET_TYPE
Unexecuted instantiation: _asynciomodule.c:Py_SET_TYPE
Unexecuted instantiation: atexitmodule.c:Py_SET_TYPE
Unexecuted instantiation: faulthandler.c:Py_SET_TYPE
Unexecuted instantiation: posixmodule.c:Py_SET_TYPE
Unexecuted instantiation: signalmodule.c:Py_SET_TYPE
Unexecuted instantiation: _tracemalloc.c:Py_SET_TYPE
Unexecuted instantiation: _suggestions.c:Py_SET_TYPE
_datetimemodule.c:Py_SET_TYPE
Line
Count
Source
322
70
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
70
    ob->ob_type = type;
324
70
}
Unexecuted instantiation: _codecsmodule.c:Py_SET_TYPE
Unexecuted instantiation: _collectionsmodule.c:Py_SET_TYPE
Unexecuted instantiation: errnomodule.c:Py_SET_TYPE
Unexecuted instantiation: _iomodule.c:Py_SET_TYPE
Unexecuted instantiation: iobase.c:Py_SET_TYPE
Unexecuted instantiation: fileio.c:Py_SET_TYPE
Unexecuted instantiation: bytesio.c:Py_SET_TYPE
Unexecuted instantiation: bufferedio.c:Py_SET_TYPE
Unexecuted instantiation: textio.c:Py_SET_TYPE
Unexecuted instantiation: stringio.c:Py_SET_TYPE
itertoolsmodule.c:Py_SET_TYPE
Line
Count
Source
322
12
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
12
    ob->ob_type = type;
324
12
}
Unexecuted instantiation: sre.c:Py_SET_TYPE
Unexecuted instantiation: _sysconfig.c:Py_SET_TYPE
Unexecuted instantiation: _threadmodule.c:Py_SET_TYPE
Unexecuted instantiation: timemodule.c:Py_SET_TYPE
Unexecuted instantiation: _typesmodule.c:Py_SET_TYPE
Unexecuted instantiation: _typingmodule.c:Py_SET_TYPE
Unexecuted instantiation: _weakref.c:Py_SET_TYPE
Unexecuted instantiation: _abc.c:Py_SET_TYPE
Unexecuted instantiation: _functoolsmodule.c:Py_SET_TYPE
Unexecuted instantiation: _localemodule.c:Py_SET_TYPE
Unexecuted instantiation: _opcode.c:Py_SET_TYPE
Unexecuted instantiation: _operator.c:Py_SET_TYPE
Unexecuted instantiation: _stat.c:Py_SET_TYPE
Unexecuted instantiation: symtablemodule.c:Py_SET_TYPE
Unexecuted instantiation: pwdmodule.c:Py_SET_TYPE
Unexecuted instantiation: getpath.c:Py_SET_TYPE
Unexecuted instantiation: frozen.c:Py_SET_TYPE
Unexecuted instantiation: getbuildinfo.c:Py_SET_TYPE
Unexecuted instantiation: peg_api.c:Py_SET_TYPE
Unexecuted instantiation: file_tokenizer.c:Py_SET_TYPE
Unexecuted instantiation: helpers.c:Py_SET_TYPE
Unexecuted instantiation: myreadline.c:Py_SET_TYPE
Unexecuted instantiation: abstract.c:Py_SET_TYPE
Unexecuted instantiation: boolobject.c:Py_SET_TYPE
Unexecuted instantiation: bytes_methods.c:Py_SET_TYPE
Unexecuted instantiation: bytearrayobject.c:Py_SET_TYPE
Unexecuted instantiation: capsule.c:Py_SET_TYPE
Unexecuted instantiation: cellobject.c:Py_SET_TYPE
Unexecuted instantiation: classobject.c:Py_SET_TYPE
Unexecuted instantiation: codeobject.c:Py_SET_TYPE
complexobject.c:Py_SET_TYPE
Line
Count
Source
322
3.95k
static inline void Py_SET_TYPE(PyObject *ob, PyTypeObject *type) {
323
3.95k
    ob->ob_type = type;
324
3.95k
}
Unexecuted instantiation: descrobject.c:Py_SET_TYPE
Unexecuted instantiation: enumobject.c:Py_SET_TYPE
Unexecuted instantiation: genobject.c:Py_SET_TYPE
Unexecuted instantiation: fileobject.c:Py_SET_TYPE
Unexecuted instantiation: frameobject.c:Py_SET_TYPE
Unexecuted instantiation: funcobject.c:Py_SET_TYPE
Unexecuted instantiation: interpolationobject.c:Py_SET_TYPE
Unexecuted instantiation: iterobject.c:Py_SET_TYPE
Unexecuted instantiation: odictobject.c:Py_SET_TYPE
Unexecuted instantiation: methodobject.c:Py_SET_TYPE
Unexecuted instantiation: namespaceobject.c:Py_SET_TYPE
Unexecuted instantiation: _contextvars.c:Py_SET_TYPE
Unexecuted instantiation: Python-ast.c:Py_SET_TYPE
Unexecuted instantiation: Python-tokenize.c:Py_SET_TYPE
Unexecuted instantiation: asdl.c:Py_SET_TYPE
Unexecuted instantiation: assemble.c:Py_SET_TYPE
Unexecuted instantiation: ast.c:Py_SET_TYPE
Unexecuted instantiation: ast_preprocess.c:Py_SET_TYPE
Unexecuted instantiation: ast_unparse.c:Py_SET_TYPE
Unexecuted instantiation: critical_section.c:Py_SET_TYPE
Unexecuted instantiation: crossinterp.c:Py_SET_TYPE
Unexecuted instantiation: getcopyright.c:Py_SET_TYPE
Unexecuted instantiation: getplatform.c:Py_SET_TYPE
Unexecuted instantiation: getversion.c:Py_SET_TYPE
Unexecuted instantiation: optimizer.c:Py_SET_TYPE
Unexecuted instantiation: pathconfig.c:Py_SET_TYPE
Unexecuted instantiation: structmember.c:Py_SET_TYPE
Unexecuted instantiation: pegen.c:Py_SET_TYPE
Unexecuted instantiation: pegen_errors.c:Py_SET_TYPE
Unexecuted instantiation: parser.c:Py_SET_TYPE
Unexecuted instantiation: buffer.c:Py_SET_TYPE
Unexecuted instantiation: lexer.c:Py_SET_TYPE
Unexecuted instantiation: state.c:Py_SET_TYPE
Unexecuted instantiation: readline_tokenizer.c:Py_SET_TYPE
Unexecuted instantiation: string_tokenizer.c:Py_SET_TYPE
Unexecuted instantiation: utf8_tokenizer.c:Py_SET_TYPE
Unexecuted instantiation: getcompiler.c:Py_SET_TYPE
Unexecuted instantiation: mystrtoul.c:Py_SET_TYPE
Unexecuted instantiation: token.c:Py_SET_TYPE
Unexecuted instantiation: action_helpers.c:Py_SET_TYPE
Unexecuted instantiation: string_parser.c:Py_SET_TYPE
325
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
326
1.11G
#  define Py_SET_TYPE(ob, type) Py_SET_TYPE(_PyObject_CAST(ob), type)
327
#endif
328
329
1.36G
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
1.36G
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
1.36G
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
1.36G
    ob->ob_size = size;
336
1.36G
#endif
337
1.36G
}
bytesobject.c:Py_SET_SIZE
Line
Count
Source
329
23.8M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
23.8M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
23.8M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
23.8M
    ob->ob_size = size;
336
23.8M
#endif
337
23.8M
}
Unexecuted instantiation: call.c:Py_SET_SIZE
Unexecuted instantiation: exceptions.c:Py_SET_SIZE
Unexecuted instantiation: genericaliasobject.c:Py_SET_SIZE
Unexecuted instantiation: floatobject.c:Py_SET_SIZE
listobject.c:Py_SET_SIZE
Line
Count
Source
329
653M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
653M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
653M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
653M
    ob->ob_size = size;
336
653M
#endif
337
653M
}
Unexecuted instantiation: longobject.c:Py_SET_SIZE
Unexecuted instantiation: dictobject.c:Py_SET_SIZE
Unexecuted instantiation: memoryobject.c:Py_SET_SIZE
Unexecuted instantiation: moduleobject.c:Py_SET_SIZE
object.c:Py_SET_SIZE
Line
Count
Source
329
32.8k
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
32.8k
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
32.8k
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
32.8k
    ob->ob_size = size;
336
32.8k
#endif
337
32.8k
}
Unexecuted instantiation: obmalloc.c:Py_SET_SIZE
Unexecuted instantiation: picklebufobject.c:Py_SET_SIZE
Unexecuted instantiation: rangeobject.c:Py_SET_SIZE
Unexecuted instantiation: setobject.c:Py_SET_SIZE
Unexecuted instantiation: sliceobject.c:Py_SET_SIZE
structseq.c:Py_SET_SIZE
Line
Count
Source
329
4.72k
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
4.72k
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
4.72k
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
4.72k
    ob->ob_size = size;
336
4.72k
#endif
337
4.72k
}
Unexecuted instantiation: templateobject.c:Py_SET_SIZE
Unexecuted instantiation: tupleobject.c:Py_SET_SIZE
typeobject.c:Py_SET_SIZE
Line
Count
Source
329
2.21M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
2.21M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
2.21M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
2.21M
    ob->ob_size = size;
336
2.21M
#endif
337
2.21M
}
Unexecuted instantiation: typevarobject.c:Py_SET_SIZE
unicodeobject.c:Py_SET_SIZE
Line
Count
Source
329
17.7M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
17.7M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
17.7M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
17.7M
    ob->ob_size = size;
336
17.7M
#endif
337
17.7M
}
Unexecuted instantiation: unicodectype.c:Py_SET_SIZE
Unexecuted instantiation: unionobject.c:Py_SET_SIZE
Unexecuted instantiation: weakrefobject.c:Py_SET_SIZE
Unexecuted instantiation: _warnings.c:Py_SET_SIZE
Unexecuted instantiation: bltinmodule.c:Py_SET_SIZE
ceval.c:Py_SET_SIZE
Line
Count
Source
329
382M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
382M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
382M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
382M
    ob->ob_size = size;
336
382M
#endif
337
382M
}
Unexecuted instantiation: codecs.c:Py_SET_SIZE
Unexecuted instantiation: codegen.c:Py_SET_SIZE
Unexecuted instantiation: compile.c:Py_SET_SIZE
Unexecuted instantiation: context.c:Py_SET_SIZE
Unexecuted instantiation: errors.c:Py_SET_SIZE
Unexecuted instantiation: flowgraph.c:Py_SET_SIZE
Unexecuted instantiation: frame.c:Py_SET_SIZE
Unexecuted instantiation: future.c:Py_SET_SIZE
gc.c:Py_SET_SIZE
Line
Count
Source
329
195M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
195M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
195M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
195M
    ob->ob_size = size;
336
195M
#endif
337
195M
}
Unexecuted instantiation: gc_gil.c:Py_SET_SIZE
Unexecuted instantiation: getargs.c:Py_SET_SIZE
Unexecuted instantiation: ceval_gil.c:Py_SET_SIZE
Unexecuted instantiation: hamt.c:Py_SET_SIZE
Unexecuted instantiation: hashtable.c:Py_SET_SIZE
Unexecuted instantiation: import.c:Py_SET_SIZE
Unexecuted instantiation: importdl.c:Py_SET_SIZE
Unexecuted instantiation: initconfig.c:Py_SET_SIZE
Unexecuted instantiation: instrumentation.c:Py_SET_SIZE
Unexecuted instantiation: instruction_sequence.c:Py_SET_SIZE
Unexecuted instantiation: intrinsics.c:Py_SET_SIZE
Unexecuted instantiation: legacy_tracing.c:Py_SET_SIZE
Unexecuted instantiation: lock.c:Py_SET_SIZE
Unexecuted instantiation: marshal.c:Py_SET_SIZE
Unexecuted instantiation: modsupport.c:Py_SET_SIZE
Unexecuted instantiation: mysnprintf.c:Py_SET_SIZE
Unexecuted instantiation: parking_lot.c:Py_SET_SIZE
Unexecuted instantiation: preconfig.c:Py_SET_SIZE
Unexecuted instantiation: pyarena.c:Py_SET_SIZE
Unexecuted instantiation: pyctype.c:Py_SET_SIZE
Unexecuted instantiation: pyhash.c:Py_SET_SIZE
Unexecuted instantiation: pylifecycle.c:Py_SET_SIZE
Unexecuted instantiation: pymath.c:Py_SET_SIZE
Unexecuted instantiation: pystate.c:Py_SET_SIZE
Unexecuted instantiation: pythonrun.c:Py_SET_SIZE
Unexecuted instantiation: pytime.c:Py_SET_SIZE
Unexecuted instantiation: qsbr.c:Py_SET_SIZE
Unexecuted instantiation: bootstrap_hash.c:Py_SET_SIZE
Unexecuted instantiation: specialize.c:Py_SET_SIZE
Unexecuted instantiation: symtable.c:Py_SET_SIZE
Unexecuted instantiation: sysmodule.c:Py_SET_SIZE
Unexecuted instantiation: thread.c:Py_SET_SIZE
Unexecuted instantiation: traceback.c:Py_SET_SIZE
Unexecuted instantiation: tracemalloc.c:Py_SET_SIZE
Unexecuted instantiation: getopt.c:Py_SET_SIZE
Unexecuted instantiation: pystrcmp.c:Py_SET_SIZE
Unexecuted instantiation: pystrtod.c:Py_SET_SIZE
Unexecuted instantiation: pystrhex.c:Py_SET_SIZE
Unexecuted instantiation: dtoa.c:Py_SET_SIZE
Unexecuted instantiation: formatter_unicode.c:Py_SET_SIZE
Unexecuted instantiation: fileutils.c:Py_SET_SIZE
Unexecuted instantiation: suggestions.c:Py_SET_SIZE
Unexecuted instantiation: perf_trampoline.c:Py_SET_SIZE
Unexecuted instantiation: perf_jit_trampoline.c:Py_SET_SIZE
Unexecuted instantiation: remote_debugging.c:Py_SET_SIZE
Unexecuted instantiation: dynload_shlib.c:Py_SET_SIZE
Unexecuted instantiation: config.c:Py_SET_SIZE
Unexecuted instantiation: gcmodule.c:Py_SET_SIZE
Unexecuted instantiation: _asynciomodule.c:Py_SET_SIZE
Unexecuted instantiation: atexitmodule.c:Py_SET_SIZE
Unexecuted instantiation: faulthandler.c:Py_SET_SIZE
Unexecuted instantiation: posixmodule.c:Py_SET_SIZE
Unexecuted instantiation: signalmodule.c:Py_SET_SIZE
Unexecuted instantiation: _tracemalloc.c:Py_SET_SIZE
Unexecuted instantiation: _suggestions.c:Py_SET_SIZE
Unexecuted instantiation: _datetimemodule.c:Py_SET_SIZE
Unexecuted instantiation: _codecsmodule.c:Py_SET_SIZE
_collectionsmodule.c:Py_SET_SIZE
Line
Count
Source
329
79.9M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
79.9M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
79.9M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
79.9M
    ob->ob_size = size;
336
79.9M
#endif
337
79.9M
}
Unexecuted instantiation: errnomodule.c:Py_SET_SIZE
Unexecuted instantiation: _iomodule.c:Py_SET_SIZE
Unexecuted instantiation: iobase.c:Py_SET_SIZE
Unexecuted instantiation: fileio.c:Py_SET_SIZE
Unexecuted instantiation: bytesio.c:Py_SET_SIZE
Unexecuted instantiation: bufferedio.c:Py_SET_SIZE
Unexecuted instantiation: textio.c:Py_SET_SIZE
Unexecuted instantiation: stringio.c:Py_SET_SIZE
Unexecuted instantiation: itertoolsmodule.c:Py_SET_SIZE
Unexecuted instantiation: sre.c:Py_SET_SIZE
Unexecuted instantiation: _sysconfig.c:Py_SET_SIZE
Unexecuted instantiation: _threadmodule.c:Py_SET_SIZE
Unexecuted instantiation: timemodule.c:Py_SET_SIZE
Unexecuted instantiation: _typesmodule.c:Py_SET_SIZE
Unexecuted instantiation: _typingmodule.c:Py_SET_SIZE
Unexecuted instantiation: _weakref.c:Py_SET_SIZE
Unexecuted instantiation: _abc.c:Py_SET_SIZE
Unexecuted instantiation: _functoolsmodule.c:Py_SET_SIZE
Unexecuted instantiation: _localemodule.c:Py_SET_SIZE
Unexecuted instantiation: _opcode.c:Py_SET_SIZE
Unexecuted instantiation: _operator.c:Py_SET_SIZE
Unexecuted instantiation: _stat.c:Py_SET_SIZE
Unexecuted instantiation: symtablemodule.c:Py_SET_SIZE
Unexecuted instantiation: pwdmodule.c:Py_SET_SIZE
Unexecuted instantiation: getpath.c:Py_SET_SIZE
Unexecuted instantiation: frozen.c:Py_SET_SIZE
Unexecuted instantiation: getbuildinfo.c:Py_SET_SIZE
Unexecuted instantiation: peg_api.c:Py_SET_SIZE
Unexecuted instantiation: file_tokenizer.c:Py_SET_SIZE
Unexecuted instantiation: helpers.c:Py_SET_SIZE
Unexecuted instantiation: myreadline.c:Py_SET_SIZE
abstract.c:Py_SET_SIZE
Line
Count
Source
329
200
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
200
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
200
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
200
    ob->ob_size = size;
336
200
#endif
337
200
}
Unexecuted instantiation: boolobject.c:Py_SET_SIZE
Unexecuted instantiation: bytes_methods.c:Py_SET_SIZE
bytearrayobject.c:Py_SET_SIZE
Line
Count
Source
329
5.82M
static inline void Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) {
330
5.82M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyLong_Type);
331
5.82M
    assert(Py_TYPE(_PyObject_CAST(ob)) != &PyBool_Type);
332
#ifdef Py_GIL_DISABLED
333
    _Py_atomic_store_ssize_relaxed(&ob->ob_size, size);
334
#else
335
5.82M
    ob->ob_size = size;
336
5.82M
#endif
337
5.82M
}
Unexecuted instantiation: capsule.c:Py_SET_SIZE
Unexecuted instantiation: cellobject.c:Py_SET_SIZE
Unexecuted instantiation: classobject.c:Py_SET_SIZE
Unexecuted instantiation: codeobject.c:Py_SET_SIZE
Unexecuted instantiation: complexobject.c:Py_SET_SIZE
Unexecuted instantiation: descrobject.c:Py_SET_SIZE
Unexecuted instantiation: enumobject.c:Py_SET_SIZE
Unexecuted instantiation: genobject.c:Py_SET_SIZE
Unexecuted instantiation: fileobject.c:Py_SET_SIZE
Unexecuted instantiation: frameobject.c:Py_SET_SIZE
Unexecuted instantiation: funcobject.c:Py_SET_SIZE
Unexecuted instantiation: interpolationobject.c:Py_SET_SIZE
Unexecuted instantiation: iterobject.c:Py_SET_SIZE
Unexecuted instantiation: odictobject.c:Py_SET_SIZE
Unexecuted instantiation: methodobject.c:Py_SET_SIZE
Unexecuted instantiation: namespaceobject.c:Py_SET_SIZE
Unexecuted instantiation: _contextvars.c:Py_SET_SIZE
Unexecuted instantiation: Python-ast.c:Py_SET_SIZE
Unexecuted instantiation: Python-tokenize.c:Py_SET_SIZE
Unexecuted instantiation: asdl.c:Py_SET_SIZE
Unexecuted instantiation: assemble.c:Py_SET_SIZE
Unexecuted instantiation: ast.c:Py_SET_SIZE
Unexecuted instantiation: ast_preprocess.c:Py_SET_SIZE
Unexecuted instantiation: ast_unparse.c:Py_SET_SIZE
Unexecuted instantiation: critical_section.c:Py_SET_SIZE
Unexecuted instantiation: crossinterp.c:Py_SET_SIZE
Unexecuted instantiation: getcopyright.c:Py_SET_SIZE
Unexecuted instantiation: getplatform.c:Py_SET_SIZE
Unexecuted instantiation: getversion.c:Py_SET_SIZE
Unexecuted instantiation: optimizer.c:Py_SET_SIZE
Unexecuted instantiation: pathconfig.c:Py_SET_SIZE
Unexecuted instantiation: structmember.c:Py_SET_SIZE
Unexecuted instantiation: pegen.c:Py_SET_SIZE
Unexecuted instantiation: pegen_errors.c:Py_SET_SIZE
Unexecuted instantiation: parser.c:Py_SET_SIZE
Unexecuted instantiation: buffer.c:Py_SET_SIZE
Unexecuted instantiation: lexer.c:Py_SET_SIZE
Unexecuted instantiation: state.c:Py_SET_SIZE
Unexecuted instantiation: readline_tokenizer.c:Py_SET_SIZE
Unexecuted instantiation: string_tokenizer.c:Py_SET_SIZE
Unexecuted instantiation: utf8_tokenizer.c:Py_SET_SIZE
Unexecuted instantiation: getcompiler.c:Py_SET_SIZE
Unexecuted instantiation: mystrtoul.c:Py_SET_SIZE
Unexecuted instantiation: token.c:Py_SET_SIZE
Unexecuted instantiation: action_helpers.c:Py_SET_SIZE
Unexecuted instantiation: string_parser.c:Py_SET_SIZE
338
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
339
1.36G
#  define Py_SET_SIZE(ob, size) Py_SET_SIZE(_PyVarObject_CAST(ob), (size))
340
#endif
341
#endif // !defined(_Py_OPAQUE_PYOBJECT)
342
343
344
/*
345
Type objects contain a string containing the type name (to help somewhat
346
in debugging), the allocation parameters (see PyObject_New() and
347
PyObject_NewVar()),
348
and methods for accessing objects of the type.  Methods are optional, a
349
nil pointer meaning that particular kind of access is not available for
350
this type.  The Py_DECREF() macro uses the tp_dealloc method without
351
checking for a nil pointer; it should always be implemented except if
352
the implementation can guarantee that the reference count will never
353
reach zero (e.g., for statically allocated type objects).
354
355
NB: the methods for certain type groups are now contained in separate
356
method blocks.
357
*/
358
359
typedef PyObject * (*unaryfunc)(PyObject *);
360
typedef PyObject * (*binaryfunc)(PyObject *, PyObject *);
361
typedef PyObject * (*ternaryfunc)(PyObject *, PyObject *, PyObject *);
362
typedef int (*inquiry)(PyObject *);
363
typedef Py_ssize_t (*lenfunc)(PyObject *);
364
typedef PyObject *(*ssizeargfunc)(PyObject *, Py_ssize_t);
365
typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t);
366
typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *);
367
typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *);
368
typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *);
369
370
typedef int (*objobjproc)(PyObject *, PyObject *);
371
typedef int (*visitproc)(PyObject *, void *);
372
typedef int (*traverseproc)(PyObject *, visitproc, void *);
373
374
375
typedef void (*freefunc)(void *);
376
typedef void (*destructor)(PyObject *);
377
typedef PyObject *(*getattrfunc)(PyObject *, char *);
378
typedef PyObject *(*getattrofunc)(PyObject *, PyObject *);
379
typedef int (*setattrfunc)(PyObject *, char *, PyObject *);
380
typedef int (*setattrofunc)(PyObject *, PyObject *, PyObject *);
381
typedef PyObject *(*reprfunc)(PyObject *);
382
typedef Py_hash_t (*hashfunc)(PyObject *);
383
typedef PyObject *(*richcmpfunc) (PyObject *, PyObject *, int);
384
typedef PyObject *(*getiterfunc) (PyObject *);
385
typedef PyObject *(*iternextfunc) (PyObject *);
386
typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *);
387
typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *);
388
typedef int (*initproc)(PyObject *, PyObject *, PyObject *);
389
typedef PyObject *(*newfunc)(PyTypeObject *, PyObject *, PyObject *);
390
typedef PyObject *(*allocfunc)(PyTypeObject *, Py_ssize_t);
391
392
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030c0000 // 3.12
393
typedef PyObject *(*vectorcallfunc)(PyObject *callable, PyObject *const *args,
394
                                    size_t nargsf, PyObject *kwnames);
395
#endif
396
397
typedef struct{
398
    int slot;    /* slot id, see below */
399
    void *pfunc; /* function pointer */
400
} PyType_Slot;
401
402
typedef struct{
403
    const char* name;
404
    int basicsize;
405
    int itemsize;
406
    unsigned int flags;
407
    PyType_Slot *slots; /* terminated by slot==0. */
408
} PyType_Spec;
409
410
PyAPI_FUNC(PyObject*) PyType_FromSpec(PyType_Spec*);
411
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
412
PyAPI_FUNC(PyObject*) PyType_FromSpecWithBases(PyType_Spec*, PyObject*);
413
#endif
414
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03040000
415
PyAPI_FUNC(void*) PyType_GetSlot(PyTypeObject*, int);
416
#endif
417
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03090000
418
PyAPI_FUNC(PyObject*) PyType_FromModuleAndSpec(PyObject *, PyType_Spec *, PyObject *);
419
PyAPI_FUNC(PyObject *) PyType_GetModule(PyTypeObject *);
420
PyAPI_FUNC(void *) PyType_GetModuleState(PyTypeObject *);
421
#endif
422
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030B0000
423
PyAPI_FUNC(PyObject *) PyType_GetName(PyTypeObject *);
424
PyAPI_FUNC(PyObject *) PyType_GetQualName(PyTypeObject *);
425
#endif
426
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030D0000
427
PyAPI_FUNC(PyObject *) PyType_GetFullyQualifiedName(PyTypeObject *type);
428
PyAPI_FUNC(PyObject *) PyType_GetModuleName(PyTypeObject *type);
429
#endif
430
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000
431
PyAPI_FUNC(PyObject *) PyType_FromMetaclass(PyTypeObject*, PyObject*, PyType_Spec*, PyObject*);
432
PyAPI_FUNC(void *) PyObject_GetTypeData(PyObject *obj, PyTypeObject *cls);
433
PyAPI_FUNC(Py_ssize_t) PyType_GetTypeDataSize(PyTypeObject *cls);
434
#endif
435
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030E0000
436
PyAPI_FUNC(int) PyType_GetBaseByToken(PyTypeObject *, void *, PyTypeObject **);
437
12
#define Py_TP_USE_SPEC NULL
438
#endif
439
440
/* Generic type check */
441
PyAPI_FUNC(int) PyType_IsSubtype(PyTypeObject *, PyTypeObject *);
442
443
651M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
651M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
651M
}
Unexecuted instantiation: bytesobject.c:PyObject_TypeCheck
Unexecuted instantiation: call.c:PyObject_TypeCheck
exceptions.c:PyObject_TypeCheck
Line
Count
Source
443
1.08M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
1.08M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
1.08M
}
Unexecuted instantiation: genericaliasobject.c:PyObject_TypeCheck
floatobject.c:PyObject_TypeCheck
Line
Count
Source
443
10.5M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
10.5M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
10.5M
}
Unexecuted instantiation: listobject.c:PyObject_TypeCheck
longobject.c:PyObject_TypeCheck
Line
Count
Source
443
2.49k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
2.49k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
2.49k
}
dictobject.c:PyObject_TypeCheck
Line
Count
Source
443
13.5M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
13.5M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
13.5M
}
Unexecuted instantiation: memoryobject.c:PyObject_TypeCheck
moduleobject.c:PyObject_TypeCheck
Line
Count
Source
443
24.8M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
24.8M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
24.8M
}
Unexecuted instantiation: object.c:PyObject_TypeCheck
Unexecuted instantiation: obmalloc.c:PyObject_TypeCheck
Unexecuted instantiation: picklebufobject.c:PyObject_TypeCheck
Unexecuted instantiation: rangeobject.c:PyObject_TypeCheck
Unexecuted instantiation: setobject.c:PyObject_TypeCheck
Unexecuted instantiation: sliceobject.c:PyObject_TypeCheck
Unexecuted instantiation: structseq.c:PyObject_TypeCheck
Unexecuted instantiation: templateobject.c:PyObject_TypeCheck
Unexecuted instantiation: tupleobject.c:PyObject_TypeCheck
typeobject.c:PyObject_TypeCheck
Line
Count
Source
443
77.8M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
77.8M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
77.8M
}
Unexecuted instantiation: typevarobject.c:PyObject_TypeCheck
Unexecuted instantiation: unicodeobject.c:PyObject_TypeCheck
Unexecuted instantiation: unicodectype.c:PyObject_TypeCheck
Unexecuted instantiation: unionobject.c:PyObject_TypeCheck
weakrefobject.c:PyObject_TypeCheck
Line
Count
Source
443
352
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
352
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
352
}
_warnings.c:PyObject_TypeCheck
Line
Count
Source
443
15.9k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
15.9k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
15.9k
}
bltinmodule.c:PyObject_TypeCheck
Line
Count
Source
443
8.69M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
8.69M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
8.69M
}
ceval.c:PyObject_TypeCheck
Line
Count
Source
443
16
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
16
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
16
}
codecs.c:PyObject_TypeCheck
Line
Count
Source
443
525k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
525k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
525k
}
codegen.c:PyObject_TypeCheck
Line
Count
Source
443
24
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
24
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
24
}
Unexecuted instantiation: compile.c:PyObject_TypeCheck
Unexecuted instantiation: context.c:PyObject_TypeCheck
Unexecuted instantiation: errors.c:PyObject_TypeCheck
Unexecuted instantiation: flowgraph.c:PyObject_TypeCheck
Unexecuted instantiation: frame.c:PyObject_TypeCheck
Unexecuted instantiation: future.c:PyObject_TypeCheck
gc.c:PyObject_TypeCheck
Line
Count
Source
443
1.18M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
1.18M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
1.18M
}
Unexecuted instantiation: gc_gil.c:PyObject_TypeCheck
Unexecuted instantiation: getargs.c:PyObject_TypeCheck
Unexecuted instantiation: ceval_gil.c:PyObject_TypeCheck
Unexecuted instantiation: hamt.c:PyObject_TypeCheck
Unexecuted instantiation: hashtable.c:PyObject_TypeCheck
import.c:PyObject_TypeCheck
Line
Count
Source
443
963
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
963
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
963
}
importdl.c:PyObject_TypeCheck
Line
Count
Source
443
383
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
383
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
383
}
Unexecuted instantiation: initconfig.c:PyObject_TypeCheck
Unexecuted instantiation: instrumentation.c:PyObject_TypeCheck
Unexecuted instantiation: instruction_sequence.c:PyObject_TypeCheck
Unexecuted instantiation: intrinsics.c:PyObject_TypeCheck
Unexecuted instantiation: legacy_tracing.c:PyObject_TypeCheck
Unexecuted instantiation: lock.c:PyObject_TypeCheck
Unexecuted instantiation: marshal.c:PyObject_TypeCheck
modsupport.c:PyObject_TypeCheck
Line
Count
Source
443
8.95k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
8.95k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
8.95k
}
Unexecuted instantiation: mysnprintf.c:PyObject_TypeCheck
Unexecuted instantiation: parking_lot.c:PyObject_TypeCheck
Unexecuted instantiation: preconfig.c:PyObject_TypeCheck
Unexecuted instantiation: pyarena.c:PyObject_TypeCheck
Unexecuted instantiation: pyctype.c:PyObject_TypeCheck
Unexecuted instantiation: pyhash.c:PyObject_TypeCheck
Unexecuted instantiation: pylifecycle.c:PyObject_TypeCheck
Unexecuted instantiation: pymath.c:PyObject_TypeCheck
Unexecuted instantiation: pystate.c:PyObject_TypeCheck
Unexecuted instantiation: pythonrun.c:PyObject_TypeCheck
Unexecuted instantiation: pytime.c:PyObject_TypeCheck
Unexecuted instantiation: qsbr.c:PyObject_TypeCheck
Unexecuted instantiation: bootstrap_hash.c:PyObject_TypeCheck
specialize.c:PyObject_TypeCheck
Line
Count
Source
443
567
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
567
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
567
}
Unexecuted instantiation: symtable.c:PyObject_TypeCheck
Unexecuted instantiation: sysmodule.c:PyObject_TypeCheck
Unexecuted instantiation: thread.c:PyObject_TypeCheck
Unexecuted instantiation: traceback.c:PyObject_TypeCheck
Unexecuted instantiation: tracemalloc.c:PyObject_TypeCheck
Unexecuted instantiation: getopt.c:PyObject_TypeCheck
Unexecuted instantiation: pystrcmp.c:PyObject_TypeCheck
Unexecuted instantiation: pystrtod.c:PyObject_TypeCheck
Unexecuted instantiation: pystrhex.c:PyObject_TypeCheck
Unexecuted instantiation: dtoa.c:PyObject_TypeCheck
Unexecuted instantiation: formatter_unicode.c:PyObject_TypeCheck
Unexecuted instantiation: fileutils.c:PyObject_TypeCheck
Unexecuted instantiation: suggestions.c:PyObject_TypeCheck
Unexecuted instantiation: perf_trampoline.c:PyObject_TypeCheck
Unexecuted instantiation: perf_jit_trampoline.c:PyObject_TypeCheck
Unexecuted instantiation: remote_debugging.c:PyObject_TypeCheck
Unexecuted instantiation: dynload_shlib.c:PyObject_TypeCheck
Unexecuted instantiation: config.c:PyObject_TypeCheck
Unexecuted instantiation: gcmodule.c:PyObject_TypeCheck
Unexecuted instantiation: _asynciomodule.c:PyObject_TypeCheck
Unexecuted instantiation: atexitmodule.c:PyObject_TypeCheck
Unexecuted instantiation: faulthandler.c:PyObject_TypeCheck
Unexecuted instantiation: posixmodule.c:PyObject_TypeCheck
Unexecuted instantiation: signalmodule.c:PyObject_TypeCheck
Unexecuted instantiation: _tracemalloc.c:PyObject_TypeCheck
Unexecuted instantiation: _suggestions.c:PyObject_TypeCheck
_datetimemodule.c:PyObject_TypeCheck
Line
Count
Source
443
6
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
6
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
6
}
Unexecuted instantiation: _codecsmodule.c:PyObject_TypeCheck
Unexecuted instantiation: _collectionsmodule.c:PyObject_TypeCheck
Unexecuted instantiation: errnomodule.c:PyObject_TypeCheck
Unexecuted instantiation: _iomodule.c:PyObject_TypeCheck
Unexecuted instantiation: iobase.c:PyObject_TypeCheck
Unexecuted instantiation: fileio.c:PyObject_TypeCheck
Unexecuted instantiation: bytesio.c:PyObject_TypeCheck
Unexecuted instantiation: bufferedio.c:PyObject_TypeCheck
Unexecuted instantiation: textio.c:PyObject_TypeCheck
Unexecuted instantiation: stringio.c:PyObject_TypeCheck
Unexecuted instantiation: itertoolsmodule.c:PyObject_TypeCheck
Unexecuted instantiation: sre.c:PyObject_TypeCheck
Unexecuted instantiation: _sysconfig.c:PyObject_TypeCheck
Unexecuted instantiation: _threadmodule.c:PyObject_TypeCheck
Unexecuted instantiation: timemodule.c:PyObject_TypeCheck
Unexecuted instantiation: _typesmodule.c:PyObject_TypeCheck
Unexecuted instantiation: _typingmodule.c:PyObject_TypeCheck
_weakref.c:PyObject_TypeCheck
Line
Count
Source
443
2.78k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
2.78k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
2.78k
}
Unexecuted instantiation: _abc.c:PyObject_TypeCheck
_functoolsmodule.c:PyObject_TypeCheck
Line
Count
Source
443
45
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
45
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
45
}
Unexecuted instantiation: _localemodule.c:PyObject_TypeCheck
Unexecuted instantiation: _opcode.c:PyObject_TypeCheck
Unexecuted instantiation: _operator.c:PyObject_TypeCheck
Unexecuted instantiation: _stat.c:PyObject_TypeCheck
Unexecuted instantiation: symtablemodule.c:PyObject_TypeCheck
Unexecuted instantiation: pwdmodule.c:PyObject_TypeCheck
Unexecuted instantiation: getpath.c:PyObject_TypeCheck
Unexecuted instantiation: frozen.c:PyObject_TypeCheck
Unexecuted instantiation: getbuildinfo.c:PyObject_TypeCheck
Unexecuted instantiation: peg_api.c:PyObject_TypeCheck
Unexecuted instantiation: file_tokenizer.c:PyObject_TypeCheck
Unexecuted instantiation: helpers.c:PyObject_TypeCheck
Unexecuted instantiation: myreadline.c:PyObject_TypeCheck
abstract.c:PyObject_TypeCheck
Line
Count
Source
443
7.17M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
7.17M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
7.17M
}
Unexecuted instantiation: boolobject.c:PyObject_TypeCheck
Unexecuted instantiation: bytes_methods.c:PyObject_TypeCheck
bytearrayobject.c:PyObject_TypeCheck
Line
Count
Source
443
8.77k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
8.77k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
8.77k
}
Unexecuted instantiation: capsule.c:PyObject_TypeCheck
Unexecuted instantiation: cellobject.c:PyObject_TypeCheck
Unexecuted instantiation: classobject.c:PyObject_TypeCheck
Unexecuted instantiation: codeobject.c:PyObject_TypeCheck
Unexecuted instantiation: complexobject.c:PyObject_TypeCheck
descrobject.c:PyObject_TypeCheck
Line
Count
Source
443
505M
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
505M
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
505M
}
Unexecuted instantiation: enumobject.c:PyObject_TypeCheck
Unexecuted instantiation: genobject.c:PyObject_TypeCheck
Unexecuted instantiation: fileobject.c:PyObject_TypeCheck
Unexecuted instantiation: frameobject.c:PyObject_TypeCheck
Unexecuted instantiation: funcobject.c:PyObject_TypeCheck
Unexecuted instantiation: interpolationobject.c:PyObject_TypeCheck
Unexecuted instantiation: iterobject.c:PyObject_TypeCheck
Unexecuted instantiation: odictobject.c:PyObject_TypeCheck
methodobject.c:PyObject_TypeCheck
Line
Count
Source
443
4.12k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
4.12k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
4.12k
}
Unexecuted instantiation: namespaceobject.c:PyObject_TypeCheck
Unexecuted instantiation: _contextvars.c:PyObject_TypeCheck
Unexecuted instantiation: Python-ast.c:PyObject_TypeCheck
Unexecuted instantiation: Python-tokenize.c:PyObject_TypeCheck
Unexecuted instantiation: asdl.c:PyObject_TypeCheck
Unexecuted instantiation: assemble.c:PyObject_TypeCheck
Unexecuted instantiation: ast.c:PyObject_TypeCheck
Unexecuted instantiation: ast_preprocess.c:PyObject_TypeCheck
Unexecuted instantiation: ast_unparse.c:PyObject_TypeCheck
Unexecuted instantiation: critical_section.c:PyObject_TypeCheck
Unexecuted instantiation: crossinterp.c:PyObject_TypeCheck
Unexecuted instantiation: getcopyright.c:PyObject_TypeCheck
Unexecuted instantiation: getplatform.c:PyObject_TypeCheck
Unexecuted instantiation: getversion.c:PyObject_TypeCheck
Unexecuted instantiation: optimizer.c:PyObject_TypeCheck
Unexecuted instantiation: pathconfig.c:PyObject_TypeCheck
Unexecuted instantiation: structmember.c:PyObject_TypeCheck
pegen.c:PyObject_TypeCheck
Line
Count
Source
443
13.2k
static inline int PyObject_TypeCheck(PyObject *ob, PyTypeObject *type) {
444
13.2k
    return Py_IS_TYPE(ob, type) || PyType_IsSubtype(Py_TYPE(ob), type);
445
13.2k
}
Unexecuted instantiation: pegen_errors.c:PyObject_TypeCheck
Unexecuted instantiation: parser.c:PyObject_TypeCheck
Unexecuted instantiation: buffer.c:PyObject_TypeCheck
Unexecuted instantiation: lexer.c:PyObject_TypeCheck
Unexecuted instantiation: state.c:PyObject_TypeCheck
Unexecuted instantiation: readline_tokenizer.c:PyObject_TypeCheck
Unexecuted instantiation: string_tokenizer.c:PyObject_TypeCheck
Unexecuted instantiation: utf8_tokenizer.c:PyObject_TypeCheck
Unexecuted instantiation: getcompiler.c:PyObject_TypeCheck
Unexecuted instantiation: mystrtoul.c:PyObject_TypeCheck
Unexecuted instantiation: token.c:PyObject_TypeCheck
Unexecuted instantiation: action_helpers.c:PyObject_TypeCheck
Unexecuted instantiation: string_parser.c:PyObject_TypeCheck
446
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
447
652M
#  define PyObject_TypeCheck(ob, type) PyObject_TypeCheck(_PyObject_CAST(ob), (type))
448
#endif
449
450
PyAPI_DATA(PyTypeObject) PyType_Type; /* built-in 'type' */
451
PyAPI_DATA(PyTypeObject) PyBaseObject_Type; /* built-in 'object' */
452
PyAPI_DATA(PyTypeObject) PySuper_Type; /* built-in 'super' */
453
454
PyAPI_FUNC(unsigned long) PyType_GetFlags(PyTypeObject*);
455
456
PyAPI_FUNC(int) PyType_Ready(PyTypeObject *);
457
PyAPI_FUNC(PyObject *) PyType_GenericAlloc(PyTypeObject *, Py_ssize_t);
458
PyAPI_FUNC(PyObject *) PyType_GenericNew(PyTypeObject *,
459
                                               PyObject *, PyObject *);
460
PyAPI_FUNC(unsigned int) PyType_ClearCache(void);
461
PyAPI_FUNC(void) PyType_Modified(PyTypeObject *);
462
463
/* Generic operations on objects */
464
PyAPI_FUNC(PyObject *) PyObject_Repr(PyObject *);
465
PyAPI_FUNC(PyObject *) PyObject_Str(PyObject *);
466
PyAPI_FUNC(PyObject *) PyObject_ASCII(PyObject *);
467
PyAPI_FUNC(PyObject *) PyObject_Bytes(PyObject *);
468
PyAPI_FUNC(PyObject *) PyObject_RichCompare(PyObject *, PyObject *, int);
469
PyAPI_FUNC(int) PyObject_RichCompareBool(PyObject *, PyObject *, int);
470
PyAPI_FUNC(PyObject *) PyObject_GetAttrString(PyObject *, const char *);
471
PyAPI_FUNC(int) PyObject_SetAttrString(PyObject *, const char *, PyObject *);
472
PyAPI_FUNC(int) PyObject_DelAttrString(PyObject *v, const char *name);
473
PyAPI_FUNC(int) PyObject_HasAttrString(PyObject *, const char *);
474
PyAPI_FUNC(PyObject *) PyObject_GetAttr(PyObject *, PyObject *);
475
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030d0000
476
PyAPI_FUNC(int) PyObject_GetOptionalAttr(PyObject *, PyObject *, PyObject **);
477
PyAPI_FUNC(int) PyObject_GetOptionalAttrString(PyObject *, const char *, PyObject **);
478
#endif
479
PyAPI_FUNC(int) PyObject_SetAttr(PyObject *, PyObject *, PyObject *);
480
PyAPI_FUNC(int) PyObject_DelAttr(PyObject *v, PyObject *name);
481
PyAPI_FUNC(int) PyObject_HasAttr(PyObject *, PyObject *);
482
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030d0000
483
PyAPI_FUNC(int) PyObject_HasAttrWithError(PyObject *, PyObject *);
484
PyAPI_FUNC(int) PyObject_HasAttrStringWithError(PyObject *, const char *);
485
#endif
486
PyAPI_FUNC(PyObject *) PyObject_SelfIter(PyObject *);
487
PyAPI_FUNC(PyObject *) PyObject_GenericGetAttr(PyObject *, PyObject *);
488
PyAPI_FUNC(int) PyObject_GenericSetAttr(PyObject *, PyObject *, PyObject *);
489
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
490
PyAPI_FUNC(int) PyObject_GenericSetDict(PyObject *, PyObject *, void *);
491
#endif
492
PyAPI_FUNC(Py_hash_t) PyObject_Hash(PyObject *);
493
PyAPI_FUNC(Py_hash_t) PyObject_HashNotImplemented(PyObject *);
494
PyAPI_FUNC(int) PyObject_IsTrue(PyObject *);
495
PyAPI_FUNC(int) PyObject_Not(PyObject *);
496
PyAPI_FUNC(int) PyCallable_Check(PyObject *);
497
PyAPI_FUNC(void) PyObject_ClearWeakRefs(PyObject *);
498
499
/* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a
500
   list of strings.  PyObject_Dir(NULL) is like builtins.dir(),
501
   returning the names of the current locals.  In this case, if there are
502
   no current locals, NULL is returned, and PyErr_Occurred() is false.
503
*/
504
PyAPI_FUNC(PyObject *) PyObject_Dir(PyObject *);
505
506
/* Helpers for printing recursive container types */
507
PyAPI_FUNC(int) Py_ReprEnter(PyObject *);
508
PyAPI_FUNC(void) Py_ReprLeave(PyObject *);
509
510
/* Flag bits for printing: */
511
0
#define Py_PRINT_RAW    1       /* No string quotes etc. */
512
513
/*
514
Type flags (tp_flags)
515
516
These flags are used to change expected features and behavior for a
517
particular type.
518
519
Arbitration of the flag bit positions will need to be coordinated among
520
all extension writers who publicly release their extensions (this will
521
be fewer than you might expect!).
522
523
Most flags were removed as of Python 3.0 to make room for new flags.  (Some
524
flags are not for backwards compatibility but to indicate the presence of an
525
optional feature; these flags remain of course.)
526
527
Type definitions should use Py_TPFLAGS_DEFAULT for their tp_flags value.
528
529
Code can use PyType_HasFeature(type_ob, flag_value) to test whether the
530
given type object has a specified feature.
531
*/
532
533
#ifndef Py_LIMITED_API
534
535
/* Track types initialized using _PyStaticType_InitBuiltin(). */
536
693M
#define _Py_TPFLAGS_STATIC_BUILTIN (1 << 1)
537
538
/* The values array is placed inline directly after the rest of
539
 * the object. Implies Py_TPFLAGS_HAVE_GC.
540
 */
541
966M
#define Py_TPFLAGS_INLINE_VALUES (1 << 2)
542
543
/* Placement of weakref pointers are managed by the VM, not by the type.
544
 * The VM will automatically set tp_weaklistoffset.
545
 */
546
905M
#define Py_TPFLAGS_MANAGED_WEAKREF (1 << 3)
547
548
/* Placement of dict (and values) pointers are managed by the VM, not by the type.
549
 * The VM will automatically set tp_dictoffset. Implies Py_TPFLAGS_HAVE_GC.
550
 */
551
1.31G
#define Py_TPFLAGS_MANAGED_DICT (1 << 4)
552
553
905M
#define Py_TPFLAGS_PREHEADER (Py_TPFLAGS_MANAGED_WEAKREF | Py_TPFLAGS_MANAGED_DICT)
554
555
/* Set if instances of the type object are treated as sequences for pattern matching */
556
2.99M
#define Py_TPFLAGS_SEQUENCE (1 << 5)
557
/* Set if instances of the type object are treated as mappings for pattern matching */
558
2.99M
#define Py_TPFLAGS_MAPPING (1 << 6)
559
#endif
560
561
/* Disallow creating instances of the type: set tp_new to NULL and don't create
562
 * the "__new__" key in the type dictionary. */
563
306k
#define Py_TPFLAGS_DISALLOW_INSTANTIATION (1UL << 7)
564
565
/* Set if the type object is immutable: type attributes cannot be set nor deleted */
566
770k
#define Py_TPFLAGS_IMMUTABLETYPE (1UL << 8)
567
568
/* Set if the type object is dynamically allocated */
569
456M
#define Py_TPFLAGS_HEAPTYPE (1UL << 9)
570
571
/* Set if the type allows subclassing */
572
1.20M
#define Py_TPFLAGS_BASETYPE (1UL << 10)
573
574
/* Set if the type implements the vectorcall protocol (PEP 590) */
575
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030C0000
576
609M
#define Py_TPFLAGS_HAVE_VECTORCALL (1UL << 11)
577
#ifndef Py_LIMITED_API
578
// Backwards compatibility alias for API that was provisional in Python 3.8
579
#define _Py_TPFLAGS_HAVE_VECTORCALL Py_TPFLAGS_HAVE_VECTORCALL
580
#endif
581
#endif
582
583
/* Set if the type is 'ready' -- fully initialized */
584
32.0M
#define Py_TPFLAGS_READY (1UL << 12)
585
586
/* Set while the type is being 'readied', to prevent recursive ready calls */
587
604k
#define Py_TPFLAGS_READYING (1UL << 13)
588
589
/* Objects support garbage collection (see objimpl.h) */
590
5.65G
#define Py_TPFLAGS_HAVE_GC (1UL << 14)
591
592
/* These two bits are preserved for Stackless Python, next after this is 17 */
593
#ifdef STACKLESS
594
#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION (3UL << 15)
595
#else
596
301k
#define Py_TPFLAGS_HAVE_STACKLESS_EXTENSION 0
597
#endif
598
599
/* Objects behave like an unbound method */
600
104M
#define Py_TPFLAGS_METHOD_DESCRIPTOR (1UL << 17)
601
602
/* Unused. Legacy flag */
603
#define Py_TPFLAGS_VALID_VERSION_TAG  (1UL << 19)
604
605
/* Type is abstract and cannot be instantiated */
606
32.1M
#define Py_TPFLAGS_IS_ABSTRACT (1UL << 20)
607
608
// This undocumented flag gives certain built-ins their unique pattern-matching
609
// behavior, which allows a single positional subpattern to match against the
610
// subject itself (rather than a mapped attribute on it):
611
601k
#define _Py_TPFLAGS_MATCH_SELF (1UL << 22)
612
613
/* Items (ob_size*tp_itemsize) are found at the end of an instance's memory */
614
1.00M
#define Py_TPFLAGS_ITEMS_AT_END (1UL << 23)
615
616
/* These flags are used to determine if a type is a subclass. */
617
143
#define Py_TPFLAGS_LONG_SUBCLASS        (1UL << 24)
618
116
#define Py_TPFLAGS_LIST_SUBCLASS        (1UL << 25)
619
430
#define Py_TPFLAGS_TUPLE_SUBCLASS       (1UL << 26)
620
0
#define Py_TPFLAGS_BYTES_SUBCLASS       (1UL << 27)
621
7.49M
#define Py_TPFLAGS_UNICODE_SUBCLASS     (1UL << 28)
622
78
#define Py_TPFLAGS_DICT_SUBCLASS        (1UL << 29)
623
1.57k
#define Py_TPFLAGS_BASE_EXC_SUBCLASS    (1UL << 30)
624
28
#define Py_TPFLAGS_TYPE_SUBCLASS        (1UL << 31)
625
626
301k
#define Py_TPFLAGS_DEFAULT  ( \
627
301k
                 Py_TPFLAGS_HAVE_STACKLESS_EXTENSION | \
628
301k
                0)
629
630
/* NOTE: Some of the following flags reuse lower bits (removed as part of the
631
 * Python 3.0 transition). */
632
633
/* The following flags are kept for compatibility; in previous
634
 * versions they indicated presence of newer tp_* fields on the
635
 * type struct.
636
 * Starting with 3.8, binary compatibility of C extensions across
637
 * feature releases of Python is not supported anymore (except when
638
 * using the stable ABI, in which all classes are created dynamically,
639
 * using the interpreter's memory layout.)
640
 * Note that older extensions using the stable ABI set these flags,
641
 * so the bits must not be repurposed.
642
 */
643
#define Py_TPFLAGS_HAVE_FINALIZE (1UL << 0)
644
#define Py_TPFLAGS_HAVE_VERSION_TAG   (1UL << 18)
645
646
// Flag values for ob_flags (16 bits available, if SIZEOF_VOID_P > 4).
647
276M
#define _Py_IMMORTAL_FLAGS (1 << 0)
648
276M
#define _Py_STATICALLY_ALLOCATED_FLAG (1 << 2)
649
#if defined(Py_GIL_DISABLED) && defined(Py_DEBUG)
650
#define _Py_TYPE_REVEALED_FLAG (1 << 3)
651
#endif
652
653
#define Py_CONSTANT_NONE 0
654
#define Py_CONSTANT_FALSE 1
655
#define Py_CONSTANT_TRUE 2
656
#define Py_CONSTANT_ELLIPSIS 3
657
#define Py_CONSTANT_NOT_IMPLEMENTED 4
658
16
#define Py_CONSTANT_ZERO 5
659
16
#define Py_CONSTANT_ONE 6
660
207k
#define Py_CONSTANT_EMPTY_STR 7
661
4.02M
#define Py_CONSTANT_EMPTY_BYTES 8
662
16
#define Py_CONSTANT_EMPTY_TUPLE 9
663
664
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030d0000
665
PyAPI_FUNC(PyObject*) Py_GetConstant(unsigned int constant_id);
666
PyAPI_FUNC(PyObject*) Py_GetConstantBorrowed(unsigned int constant_id);
667
#endif
668
669
670
/*
671
_Py_NoneStruct is an object of undefined type which can be used in contexts
672
where NULL (nil) is not suitable (since NULL often means 'error').
673
*/
674
PyAPI_DATA(PyObject) _Py_NoneStruct; /* Don't use this directly */
675
676
#if defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030D0000
677
#  define Py_None Py_GetConstantBorrowed(Py_CONSTANT_NONE)
678
#else
679
2.24G
#  define Py_None (&_Py_NoneStruct)
680
#endif
681
682
// Test if an object is the None singleton, the same as "x is None" in Python.
683
PyAPI_FUNC(int) Py_IsNone(PyObject *x);
684
154M
#define Py_IsNone(x) Py_Is((x), Py_None)
685
686
/* Macro for returning Py_None from a function.
687
 * Only treat Py_None as immortal in the limited C API 3.12 and newer. */
688
#if defined(Py_LIMITED_API) && Py_LIMITED_API+0 < 0x030c0000
689
#  define Py_RETURN_NONE return Py_NewRef(Py_None)
690
#else
691
108M
#  define Py_RETURN_NONE return Py_None
692
#endif
693
694
/*
695
Py_NotImplemented is a singleton used to signal that an operation is
696
not implemented for a given type combination.
697
*/
698
PyAPI_DATA(PyObject) _Py_NotImplementedStruct; /* Don't use this directly */
699
700
#if defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030D0000
701
#  define Py_NotImplemented Py_GetConstantBorrowed(Py_CONSTANT_NOT_IMPLEMENTED)
702
#else
703
291M
#  define Py_NotImplemented (&_Py_NotImplementedStruct)
704
#endif
705
706
/* Macro for returning Py_NotImplemented from a function */
707
20.8M
#define Py_RETURN_NOTIMPLEMENTED return Py_NotImplemented
708
709
/* Rich comparison opcodes */
710
64.9M
#define Py_LT 0
711
737k
#define Py_LE 1
712
326M
#define Py_EQ 2
713
38.1M
#define Py_NE 3
714
1.93M
#define Py_GT 4
715
1.63k
#define Py_GE 5
716
717
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000
718
/* Result of calling PyIter_Send */
719
typedef enum {
720
    PYGEN_RETURN = 0,
721
    PYGEN_ERROR = -1,
722
    PYGEN_NEXT = 1
723
} PySendResult;
724
#endif
725
726
/*
727
 * Macro for implementing rich comparisons
728
 *
729
 * Needs to be a macro because any C-comparable type can be used.
730
 */
731
#define Py_RETURN_RICHCOMPARE(val1, val2, op)                               \
732
153M
    do {                                                                    \
733
153M
        switch (op) {                                                       \
734
114M
        case Py_EQ: if ((val1) == (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;  \
735
114M
        case Py_NE: if ((val1) != (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;  \
736
36.2M
        case Py_LT: if ((val1) < (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;   \
737
36.2M
        case Py_GT: if ((val1) > (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;   \
738
1.23M
        case Py_LE: if ((val1) <= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;  \
739
736k
        case Py_GE: if ((val1) >= (val2)) Py_RETURN_TRUE; Py_RETURN_FALSE;  \
740
92
        default:                                                            \
741
0
            Py_UNREACHABLE();                                               \
742
153M
        }                                                                   \
743
153M
    } while (0)
744
745
746
/*
747
More conventions
748
================
749
750
Argument Checking
751
-----------------
752
753
Functions that take objects as arguments normally don't check for nil
754
arguments, but they do check the type of the argument, and return an
755
error if the function doesn't apply to the type.
756
757
Failure Modes
758
-------------
759
760
Functions may fail for a variety of reasons, including running out of
761
memory.  This is communicated to the caller in two ways: an error string
762
is set (see errors.h), and the function result differs: functions that
763
normally return a pointer return NULL for failure, functions returning
764
an integer return -1 (which could be a legal return value too!), and
765
other functions return 0 for success and -1 for failure.
766
Callers should always check for errors before using the result.  If
767
an error was set, the caller must either explicitly clear it, or pass
768
the error on to its caller.
769
770
Reference Counts
771
----------------
772
773
It takes a while to get used to the proper usage of reference counts.
774
775
Functions that create an object set the reference count to 1; such new
776
objects must be stored somewhere or destroyed again with Py_DECREF().
777
Some functions that 'store' objects, such as PyTuple_SetItem() and
778
PyList_SetItem(),
779
don't increment the reference count of the object, since the most
780
frequent use is to store a fresh object.  Functions that 'retrieve'
781
objects, such as PyTuple_GetItem() and PyDict_GetItemString(), also
782
don't increment
783
the reference count, since most frequently the object is only looked at
784
quickly.  Thus, to retrieve an object and store it again, the caller
785
must call Py_INCREF() explicitly.
786
787
NOTE: functions that 'consume' a reference count, like
788
PyList_SetItem(), consume the reference even if the object wasn't
789
successfully stored, to simplify error handling.
790
791
It seems attractive to make other functions that take an object as
792
argument consume a reference count; however, this may quickly get
793
confusing (even the current practice is already confusing).  Consider
794
it carefully, it may save lots of calls to Py_INCREF() and Py_DECREF() at
795
times.
796
*/
797
798
#ifndef Py_LIMITED_API
799
#  define Py_CPYTHON_OBJECT_H
800
#  include "cpython/object.h"
801
#  undef Py_CPYTHON_OBJECT_H
802
#endif
803
804
805
static inline int
806
PyType_HasFeature(PyTypeObject *type, unsigned long feature)
807
6.22G
{
808
6.22G
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
    flags = type->tp_flags;
814
#endif
815
6.22G
    return ((flags & feature) != 0);
816
6.22G
}
bytesobject.c:PyType_HasFeature
Line
Count
Source
807
13.3M
{
808
13.3M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
13.3M
    flags = type->tp_flags;
814
13.3M
#endif
815
13.3M
    return ((flags & feature) != 0);
816
13.3M
}
call.c:PyType_HasFeature
Line
Count
Source
807
496M
{
808
496M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
496M
    flags = type->tp_flags;
814
496M
#endif
815
496M
    return ((flags & feature) != 0);
816
496M
}
exceptions.c:PyType_HasFeature
Line
Count
Source
807
721k
{
808
721k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
721k
    flags = type->tp_flags;
814
721k
#endif
815
721k
    return ((flags & feature) != 0);
816
721k
}
genericaliasobject.c:PyType_HasFeature
Line
Count
Source
807
862
{
808
862
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
862
    flags = type->tp_flags;
814
862
#endif
815
862
    return ((flags & feature) != 0);
816
862
}
floatobject.c:PyType_HasFeature
Line
Count
Source
807
1.10M
{
808
1.10M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.10M
    flags = type->tp_flags;
814
1.10M
#endif
815
1.10M
    return ((flags & feature) != 0);
816
1.10M
}
listobject.c:PyType_HasFeature
Line
Count
Source
807
259M
{
808
259M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
259M
    flags = type->tp_flags;
814
259M
#endif
815
259M
    return ((flags & feature) != 0);
816
259M
}
longobject.c:PyType_HasFeature
Line
Count
Source
807
834M
{
808
834M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
834M
    flags = type->tp_flags;
814
834M
#endif
815
834M
    return ((flags & feature) != 0);
816
834M
}
dictobject.c:PyType_HasFeature
Line
Count
Source
807
364M
{
808
364M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
364M
    flags = type->tp_flags;
814
364M
#endif
815
364M
    return ((flags & feature) != 0);
816
364M
}
memoryobject.c:PyType_HasFeature
Line
Count
Source
807
4
{
808
4
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
4
    flags = type->tp_flags;
814
4
#endif
815
4
    return ((flags & feature) != 0);
816
4
}
moduleobject.c:PyType_HasFeature
Line
Count
Source
807
3.02k
{
808
3.02k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
3.02k
    flags = type->tp_flags;
814
3.02k
#endif
815
3.02k
    return ((flags & feature) != 0);
816
3.02k
}
object.c:PyType_HasFeature
Line
Count
Source
807
784M
{
808
784M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
784M
    flags = type->tp_flags;
814
784M
#endif
815
784M
    return ((flags & feature) != 0);
816
784M
}
Unexecuted instantiation: obmalloc.c:PyType_HasFeature
Unexecuted instantiation: picklebufobject.c:PyType_HasFeature
Unexecuted instantiation: rangeobject.c:PyType_HasFeature
Unexecuted instantiation: setobject.c:PyType_HasFeature
Unexecuted instantiation: sliceobject.c:PyType_HasFeature
Unexecuted instantiation: structseq.c:PyType_HasFeature
Unexecuted instantiation: templateobject.c:PyType_HasFeature
tupleobject.c:PyType_HasFeature
Line
Count
Source
807
78.6M
{
808
78.6M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
78.6M
    flags = type->tp_flags;
814
78.6M
#endif
815
78.6M
    return ((flags & feature) != 0);
816
78.6M
}
typeobject.c:PyType_HasFeature
Line
Count
Source
807
265M
{
808
265M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
265M
    flags = type->tp_flags;
814
265M
#endif
815
265M
    return ((flags & feature) != 0);
816
265M
}
Unexecuted instantiation: typevarobject.c:PyType_HasFeature
unicodeobject.c:PyType_HasFeature
Line
Count
Source
807
1.61G
{
808
1.61G
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.61G
    flags = type->tp_flags;
814
1.61G
#endif
815
1.61G
    return ((flags & feature) != 0);
816
1.61G
}
Unexecuted instantiation: unicodectype.c:PyType_HasFeature
unionobject.c:PyType_HasFeature
Line
Count
Source
807
475
{
808
475
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
475
    flags = type->tp_flags;
814
475
#endif
815
475
    return ((flags & feature) != 0);
816
475
}
weakrefobject.c:PyType_HasFeature
Line
Count
Source
807
38.6M
{
808
38.6M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
38.6M
    flags = type->tp_flags;
814
38.6M
#endif
815
38.6M
    return ((flags & feature) != 0);
816
38.6M
}
_warnings.c:PyType_HasFeature
Line
Count
Source
807
54.5k
{
808
54.5k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
54.5k
    flags = type->tp_flags;
814
54.5k
#endif
815
54.5k
    return ((flags & feature) != 0);
816
54.5k
}
bltinmodule.c:PyType_HasFeature
Line
Count
Source
807
72.2M
{
808
72.2M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
72.2M
    flags = type->tp_flags;
814
72.2M
#endif
815
72.2M
    return ((flags & feature) != 0);
816
72.2M
}
ceval.c:PyType_HasFeature
Line
Count
Source
807
237M
{
808
237M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
237M
    flags = type->tp_flags;
814
237M
#endif
815
237M
    return ((flags & feature) != 0);
816
237M
}
codecs.c:PyType_HasFeature
Line
Count
Source
807
1.23M
{
808
1.23M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.23M
    flags = type->tp_flags;
814
1.23M
#endif
815
1.23M
    return ((flags & feature) != 0);
816
1.23M
}
codegen.c:PyType_HasFeature
Line
Count
Source
807
1.34k
{
808
1.34k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.34k
    flags = type->tp_flags;
814
1.34k
#endif
815
1.34k
    return ((flags & feature) != 0);
816
1.34k
}
Unexecuted instantiation: compile.c:PyType_HasFeature
context.c:PyType_HasFeature
Line
Count
Source
807
24
{
808
24
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
24
    flags = type->tp_flags;
814
24
#endif
815
24
    return ((flags & feature) != 0);
816
24
}
errors.c:PyType_HasFeature
Line
Count
Source
807
367M
{
808
367M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
367M
    flags = type->tp_flags;
814
367M
#endif
815
367M
    return ((flags & feature) != 0);
816
367M
}
flowgraph.c:PyType_HasFeature
Line
Count
Source
807
182
{
808
182
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
182
    flags = type->tp_flags;
814
182
#endif
815
182
    return ((flags & feature) != 0);
816
182
}
Unexecuted instantiation: frame.c:PyType_HasFeature
Unexecuted instantiation: future.c:PyType_HasFeature
Unexecuted instantiation: gc.c:PyType_HasFeature
Unexecuted instantiation: gc_gil.c:PyType_HasFeature
getargs.c:PyType_HasFeature
Line
Count
Source
807
3.18M
{
808
3.18M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
3.18M
    flags = type->tp_flags;
814
3.18M
#endif
815
3.18M
    return ((flags & feature) != 0);
816
3.18M
}
Unexecuted instantiation: ceval_gil.c:PyType_HasFeature
Unexecuted instantiation: hamt.c:PyType_HasFeature
Unexecuted instantiation: hashtable.c:PyType_HasFeature
import.c:PyType_HasFeature
Line
Count
Source
807
30.6k
{
808
30.6k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
30.6k
    flags = type->tp_flags;
814
30.6k
#endif
815
30.6k
    return ((flags & feature) != 0);
816
30.6k
}
importdl.c:PyType_HasFeature
Line
Count
Source
807
146
{
808
146
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
146
    flags = type->tp_flags;
814
146
#endif
815
146
    return ((flags & feature) != 0);
816
146
}
initconfig.c:PyType_HasFeature
Line
Count
Source
807
320
{
808
320
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
320
    flags = type->tp_flags;
814
320
#endif
815
320
    return ((flags & feature) != 0);
816
320
}
Unexecuted instantiation: instrumentation.c:PyType_HasFeature
Unexecuted instantiation: instruction_sequence.c:PyType_HasFeature
intrinsics.c:PyType_HasFeature
Line
Count
Source
807
14.5k
{
808
14.5k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
14.5k
    flags = type->tp_flags;
814
14.5k
#endif
815
14.5k
    return ((flags & feature) != 0);
816
14.5k
}
Unexecuted instantiation: legacy_tracing.c:PyType_HasFeature
Unexecuted instantiation: lock.c:PyType_HasFeature
Unexecuted instantiation: marshal.c:PyType_HasFeature
Unexecuted instantiation: modsupport.c:PyType_HasFeature
Unexecuted instantiation: mysnprintf.c:PyType_HasFeature
Unexecuted instantiation: parking_lot.c:PyType_HasFeature
Unexecuted instantiation: preconfig.c:PyType_HasFeature
Unexecuted instantiation: pyarena.c:PyType_HasFeature
Unexecuted instantiation: pyctype.c:PyType_HasFeature
Unexecuted instantiation: pyhash.c:PyType_HasFeature
pylifecycle.c:PyType_HasFeature
Line
Count
Source
807
16
{
808
16
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
16
    flags = type->tp_flags;
814
16
#endif
815
16
    return ((flags & feature) != 0);
816
16
}
Unexecuted instantiation: pymath.c:PyType_HasFeature
Unexecuted instantiation: pystate.c:PyType_HasFeature
pythonrun.c:PyType_HasFeature
Line
Count
Source
807
45.7k
{
808
45.7k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
45.7k
    flags = type->tp_flags;
814
45.7k
#endif
815
45.7k
    return ((flags & feature) != 0);
816
45.7k
}
Unexecuted instantiation: pytime.c:PyType_HasFeature
Unexecuted instantiation: qsbr.c:PyType_HasFeature
Unexecuted instantiation: bootstrap_hash.c:PyType_HasFeature
specialize.c:PyType_HasFeature
Line
Count
Source
807
1.30M
{
808
1.30M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.30M
    flags = type->tp_flags;
814
1.30M
#endif
815
1.30M
    return ((flags & feature) != 0);
816
1.30M
}
symtable.c:PyType_HasFeature
Line
Count
Source
807
120k
{
808
120k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
120k
    flags = type->tp_flags;
814
120k
#endif
815
120k
    return ((flags & feature) != 0);
816
120k
}
sysmodule.c:PyType_HasFeature
Line
Count
Source
807
666
{
808
666
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
666
    flags = type->tp_flags;
814
666
#endif
815
666
    return ((flags & feature) != 0);
816
666
}
Unexecuted instantiation: thread.c:PyType_HasFeature
Unexecuted instantiation: traceback.c:PyType_HasFeature
Unexecuted instantiation: tracemalloc.c:PyType_HasFeature
Unexecuted instantiation: getopt.c:PyType_HasFeature
Unexecuted instantiation: pystrcmp.c:PyType_HasFeature
Unexecuted instantiation: pystrtod.c:PyType_HasFeature
Unexecuted instantiation: pystrhex.c:PyType_HasFeature
Unexecuted instantiation: dtoa.c:PyType_HasFeature
Unexecuted instantiation: formatter_unicode.c:PyType_HasFeature
Unexecuted instantiation: fileutils.c:PyType_HasFeature
Unexecuted instantiation: suggestions.c:PyType_HasFeature
Unexecuted instantiation: perf_trampoline.c:PyType_HasFeature
Unexecuted instantiation: perf_jit_trampoline.c:PyType_HasFeature
Unexecuted instantiation: remote_debugging.c:PyType_HasFeature
Unexecuted instantiation: dynload_shlib.c:PyType_HasFeature
Unexecuted instantiation: config.c:PyType_HasFeature
Unexecuted instantiation: gcmodule.c:PyType_HasFeature
Unexecuted instantiation: _asynciomodule.c:PyType_HasFeature
Unexecuted instantiation: atexitmodule.c:PyType_HasFeature
Unexecuted instantiation: faulthandler.c:PyType_HasFeature
posixmodule.c:PyType_HasFeature
Line
Count
Source
807
51.3k
{
808
51.3k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
51.3k
    flags = type->tp_flags;
814
51.3k
#endif
815
51.3k
    return ((flags & feature) != 0);
816
51.3k
}
Unexecuted instantiation: signalmodule.c:PyType_HasFeature
Unexecuted instantiation: _tracemalloc.c:PyType_HasFeature
Unexecuted instantiation: _suggestions.c:PyType_HasFeature
Unexecuted instantiation: _datetimemodule.c:PyType_HasFeature
_codecsmodule.c:PyType_HasFeature
Line
Count
Source
807
959k
{
808
959k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
959k
    flags = type->tp_flags;
814
959k
#endif
815
959k
    return ((flags & feature) != 0);
816
959k
}
Unexecuted instantiation: _collectionsmodule.c:PyType_HasFeature
Unexecuted instantiation: errnomodule.c:PyType_HasFeature
_iomodule.c:PyType_HasFeature
Line
Count
Source
807
3.06k
{
808
3.06k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
3.06k
    flags = type->tp_flags;
814
3.06k
#endif
815
3.06k
    return ((flags & feature) != 0);
816
3.06k
}
Unexecuted instantiation: iobase.c:PyType_HasFeature
fileio.c:PyType_HasFeature
Line
Count
Source
807
1.29k
{
808
1.29k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.29k
    flags = type->tp_flags;
814
1.29k
#endif
815
1.29k
    return ((flags & feature) != 0);
816
1.29k
}
Unexecuted instantiation: bytesio.c:PyType_HasFeature
bufferedio.c:PyType_HasFeature
Line
Count
Source
807
2.00k
{
808
2.00k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
2.00k
    flags = type->tp_flags;
814
2.00k
#endif
815
2.00k
    return ((flags & feature) != 0);
816
2.00k
}
textio.c:PyType_HasFeature
Line
Count
Source
807
65.6k
{
808
65.6k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
65.6k
    flags = type->tp_flags;
814
65.6k
#endif
815
65.6k
    return ((flags & feature) != 0);
816
65.6k
}
stringio.c:PyType_HasFeature
Line
Count
Source
807
97.7k
{
808
97.7k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
97.7k
    flags = type->tp_flags;
814
97.7k
#endif
815
97.7k
    return ((flags & feature) != 0);
816
97.7k
}
Unexecuted instantiation: itertoolsmodule.c:PyType_HasFeature
sre.c:PyType_HasFeature
Line
Count
Source
807
177M
{
808
177M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
177M
    flags = type->tp_flags;
814
177M
#endif
815
177M
    return ((flags & feature) != 0);
816
177M
}
Unexecuted instantiation: _sysconfig.c:PyType_HasFeature
Unexecuted instantiation: _threadmodule.c:PyType_HasFeature
Unexecuted instantiation: timemodule.c:PyType_HasFeature
Unexecuted instantiation: _typesmodule.c:PyType_HasFeature
Unexecuted instantiation: _typingmodule.c:PyType_HasFeature
_weakref.c:PyType_HasFeature
Line
Count
Source
807
2.78k
{
808
2.78k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
2.78k
    flags = type->tp_flags;
814
2.78k
#endif
815
2.78k
    return ((flags & feature) != 0);
816
2.78k
}
_abc.c:PyType_HasFeature
Line
Count
Source
807
28.4k
{
808
28.4k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
28.4k
    flags = type->tp_flags;
814
28.4k
#endif
815
28.4k
    return ((flags & feature) != 0);
816
28.4k
}
_functoolsmodule.c:PyType_HasFeature
Line
Count
Source
807
33.9k
{
808
33.9k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
33.9k
    flags = type->tp_flags;
814
33.9k
#endif
815
33.9k
    return ((flags & feature) != 0);
816
33.9k
}
Unexecuted instantiation: _localemodule.c:PyType_HasFeature
Unexecuted instantiation: _opcode.c:PyType_HasFeature
Unexecuted instantiation: _operator.c:PyType_HasFeature
_stat.c:PyType_HasFeature
Line
Count
Source
807
16
{
808
16
    unsigned long flags;
809
16
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
16
    flags = PyType_GetFlags(type);
812
#else
813
    flags = type->tp_flags;
814
#endif
815
16
    return ((flags & feature) != 0);
816
16
}
Unexecuted instantiation: symtablemodule.c:PyType_HasFeature
Unexecuted instantiation: pwdmodule.c:PyType_HasFeature
getpath.c:PyType_HasFeature
Line
Count
Source
807
432
{
808
432
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
432
    flags = type->tp_flags;
814
432
#endif
815
432
    return ((flags & feature) != 0);
816
432
}
Unexecuted instantiation: frozen.c:PyType_HasFeature
Unexecuted instantiation: getbuildinfo.c:PyType_HasFeature
Unexecuted instantiation: peg_api.c:PyType_HasFeature
Unexecuted instantiation: file_tokenizer.c:PyType_HasFeature
Unexecuted instantiation: helpers.c:PyType_HasFeature
Unexecuted instantiation: myreadline.c:PyType_HasFeature
abstract.c:PyType_HasFeature
Line
Count
Source
807
536M
{
808
536M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
536M
    flags = type->tp_flags;
814
536M
#endif
815
536M
    return ((flags & feature) != 0);
816
536M
}
Unexecuted instantiation: boolobject.c:PyType_HasFeature
bytes_methods.c:PyType_HasFeature
Line
Count
Source
807
1.00M
{
808
1.00M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.00M
    flags = type->tp_flags;
814
1.00M
#endif
815
1.00M
    return ((flags & feature) != 0);
816
1.00M
}
bytearrayobject.c:PyType_HasFeature
Line
Count
Source
807
1.58M
{
808
1.58M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.58M
    flags = type->tp_flags;
814
1.58M
#endif
815
1.58M
    return ((flags & feature) != 0);
816
1.58M
}
Unexecuted instantiation: capsule.c:PyType_HasFeature
Unexecuted instantiation: cellobject.c:PyType_HasFeature
classobject.c:PyType_HasFeature
Line
Count
Source
807
22.6M
{
808
22.6M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
22.6M
    flags = type->tp_flags;
814
22.6M
#endif
815
22.6M
    return ((flags & feature) != 0);
816
22.6M
}
codeobject.c:PyType_HasFeature
Line
Count
Source
807
328k
{
808
328k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
328k
    flags = type->tp_flags;
814
328k
#endif
815
328k
    return ((flags & feature) != 0);
816
328k
}
Unexecuted instantiation: complexobject.c:PyType_HasFeature
descrobject.c:PyType_HasFeature
Line
Count
Source
807
6.95M
{
808
6.95M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
6.95M
    flags = type->tp_flags;
814
6.95M
#endif
815
6.95M
    return ((flags & feature) != 0);
816
6.95M
}
enumobject.c:PyType_HasFeature
Line
Count
Source
807
40.6M
{
808
40.6M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
40.6M
    flags = type->tp_flags;
814
40.6M
#endif
815
40.6M
    return ((flags & feature) != 0);
816
40.6M
}
genobject.c:PyType_HasFeature
Line
Count
Source
807
3.74k
{
808
3.74k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
3.74k
    flags = type->tp_flags;
814
3.74k
#endif
815
3.74k
    return ((flags & feature) != 0);
816
3.74k
}
fileobject.c:PyType_HasFeature
Line
Count
Source
807
1.00k
{
808
1.00k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
1.00k
    flags = type->tp_flags;
814
1.00k
#endif
815
1.00k
    return ((flags & feature) != 0);
816
1.00k
}
Unexecuted instantiation: frameobject.c:PyType_HasFeature
funcobject.c:PyType_HasFeature
Line
Count
Source
807
28.5k
{
808
28.5k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
28.5k
    flags = type->tp_flags;
814
28.5k
#endif
815
28.5k
    return ((flags & feature) != 0);
816
28.5k
}
Unexecuted instantiation: interpolationobject.c:PyType_HasFeature
iterobject.c:PyType_HasFeature
Line
Count
Source
807
2.93M
{
808
2.93M
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
2.93M
    flags = type->tp_flags;
814
2.93M
#endif
815
2.93M
    return ((flags & feature) != 0);
816
2.93M
}
Unexecuted instantiation: odictobject.c:PyType_HasFeature
Unexecuted instantiation: methodobject.c:PyType_HasFeature
Unexecuted instantiation: namespaceobject.c:PyType_HasFeature
Unexecuted instantiation: _contextvars.c:PyType_HasFeature
Unexecuted instantiation: Python-ast.c:PyType_HasFeature
Unexecuted instantiation: Python-tokenize.c:PyType_HasFeature
Unexecuted instantiation: asdl.c:PyType_HasFeature
Unexecuted instantiation: assemble.c:PyType_HasFeature
Unexecuted instantiation: ast.c:PyType_HasFeature
ast_preprocess.c:PyType_HasFeature
Line
Count
Source
807
495
{
808
495
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
495
    flags = type->tp_flags;
814
495
#endif
815
495
    return ((flags & feature) != 0);
816
495
}
Unexecuted instantiation: ast_unparse.c:PyType_HasFeature
Unexecuted instantiation: critical_section.c:PyType_HasFeature
Unexecuted instantiation: crossinterp.c:PyType_HasFeature
Unexecuted instantiation: getcopyright.c:PyType_HasFeature
Unexecuted instantiation: getplatform.c:PyType_HasFeature
Unexecuted instantiation: getversion.c:PyType_HasFeature
Unexecuted instantiation: optimizer.c:PyType_HasFeature
Unexecuted instantiation: pathconfig.c:PyType_HasFeature
Unexecuted instantiation: structmember.c:PyType_HasFeature
pegen.c:PyType_HasFeature
Line
Count
Source
807
55.6k
{
808
55.6k
    unsigned long flags;
809
#ifdef Py_LIMITED_API
810
    // PyTypeObject is opaque in the limited C API
811
    flags = PyType_GetFlags(type);
812
#else
813
55.6k
    flags = type->tp_flags;
814
55.6k
#endif
815
55.6k
    return ((flags & feature) != 0);
816
55.6k
}
Unexecuted instantiation: pegen_errors.c:PyType_HasFeature
Unexecuted instantiation: parser.c:PyType_HasFeature
Unexecuted instantiation: buffer.c:PyType_HasFeature
Unexecuted instantiation: lexer.c:PyType_HasFeature
Unexecuted instantiation: state.c:PyType_HasFeature
Unexecuted instantiation: readline_tokenizer.c:PyType_HasFeature
Unexecuted instantiation: string_tokenizer.c:PyType_HasFeature
Unexecuted instantiation: utf8_tokenizer.c:PyType_HasFeature
Unexecuted instantiation: getcompiler.c:PyType_HasFeature
Unexecuted instantiation: mystrtoul.c:PyType_HasFeature
Unexecuted instantiation: token.c:PyType_HasFeature
Unexecuted instantiation: action_helpers.c:PyType_HasFeature
Unexecuted instantiation: string_parser.c:PyType_HasFeature
817
818
5.97G
#define PyType_FastSubclass(type, flag) PyType_HasFeature((type), (flag))
819
820
398M
static inline int PyType_Check(PyObject *op) {
821
398M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
398M
}
Unexecuted instantiation: bytesobject.c:PyType_Check
Unexecuted instantiation: call.c:PyType_Check
Unexecuted instantiation: exceptions.c:PyType_Check
Unexecuted instantiation: genericaliasobject.c:PyType_Check
Unexecuted instantiation: floatobject.c:PyType_Check
Unexecuted instantiation: listobject.c:PyType_Check
Unexecuted instantiation: longobject.c:PyType_Check
Unexecuted instantiation: dictobject.c:PyType_Check
Unexecuted instantiation: memoryobject.c:PyType_Check
Unexecuted instantiation: moduleobject.c:PyType_Check
Unexecuted instantiation: object.c:PyType_Check
Unexecuted instantiation: obmalloc.c:PyType_Check
Unexecuted instantiation: picklebufobject.c:PyType_Check
Unexecuted instantiation: rangeobject.c:PyType_Check
Unexecuted instantiation: setobject.c:PyType_Check
Unexecuted instantiation: sliceobject.c:PyType_Check
Unexecuted instantiation: structseq.c:PyType_Check
Unexecuted instantiation: templateobject.c:PyType_Check
Unexecuted instantiation: tupleobject.c:PyType_Check
typeobject.c:PyType_Check
Line
Count
Source
820
72.1M
static inline int PyType_Check(PyObject *op) {
821
72.1M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
72.1M
}
Unexecuted instantiation: typevarobject.c:PyType_Check
Unexecuted instantiation: unicodeobject.c:PyType_Check
Unexecuted instantiation: unicodectype.c:PyType_Check
unionobject.c:PyType_Check
Line
Count
Source
820
475
static inline int PyType_Check(PyObject *op) {
821
475
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
475
}
weakrefobject.c:PyType_Check
Line
Count
Source
820
38.6M
static inline int PyType_Check(PyObject *op) {
821
38.6M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
38.6M
}
Unexecuted instantiation: _warnings.c:PyType_Check
bltinmodule.c:PyType_Check
Line
Count
Source
820
9.05k
static inline int PyType_Check(PyObject *op) {
821
9.05k
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
9.05k
}
ceval.c:PyType_Check
Line
Count
Source
820
150M
static inline int PyType_Check(PyObject *op) {
821
150M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
150M
}
Unexecuted instantiation: codecs.c:PyType_Check
Unexecuted instantiation: codegen.c:PyType_Check
Unexecuted instantiation: compile.c:PyType_Check
Unexecuted instantiation: context.c:PyType_Check
errors.c:PyType_Check
Line
Count
Source
820
99.8M
static inline int PyType_Check(PyObject *op) {
821
99.8M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
99.8M
}
Unexecuted instantiation: flowgraph.c:PyType_Check
Unexecuted instantiation: frame.c:PyType_Check
Unexecuted instantiation: future.c:PyType_Check
Unexecuted instantiation: gc.c:PyType_Check
Unexecuted instantiation: gc_gil.c:PyType_Check
Unexecuted instantiation: getargs.c:PyType_Check
Unexecuted instantiation: ceval_gil.c:PyType_Check
Unexecuted instantiation: hamt.c:PyType_Check
Unexecuted instantiation: hashtable.c:PyType_Check
Unexecuted instantiation: import.c:PyType_Check
Unexecuted instantiation: importdl.c:PyType_Check
Unexecuted instantiation: initconfig.c:PyType_Check
Unexecuted instantiation: instrumentation.c:PyType_Check
Unexecuted instantiation: instruction_sequence.c:PyType_Check
Unexecuted instantiation: intrinsics.c:PyType_Check
Unexecuted instantiation: legacy_tracing.c:PyType_Check
Unexecuted instantiation: lock.c:PyType_Check
Unexecuted instantiation: marshal.c:PyType_Check
Unexecuted instantiation: modsupport.c:PyType_Check
Unexecuted instantiation: mysnprintf.c:PyType_Check
Unexecuted instantiation: parking_lot.c:PyType_Check
Unexecuted instantiation: preconfig.c:PyType_Check
Unexecuted instantiation: pyarena.c:PyType_Check
Unexecuted instantiation: pyctype.c:PyType_Check
Unexecuted instantiation: pyhash.c:PyType_Check
Unexecuted instantiation: pylifecycle.c:PyType_Check
Unexecuted instantiation: pymath.c:PyType_Check
Unexecuted instantiation: pystate.c:PyType_Check
Unexecuted instantiation: pythonrun.c:PyType_Check
Unexecuted instantiation: pytime.c:PyType_Check
Unexecuted instantiation: qsbr.c:PyType_Check
Unexecuted instantiation: bootstrap_hash.c:PyType_Check
specialize.c:PyType_Check
Line
Count
Source
820
1.22M
static inline int PyType_Check(PyObject *op) {
821
1.22M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
1.22M
}
Unexecuted instantiation: symtable.c:PyType_Check
Unexecuted instantiation: sysmodule.c:PyType_Check
Unexecuted instantiation: thread.c:PyType_Check
Unexecuted instantiation: traceback.c:PyType_Check
Unexecuted instantiation: tracemalloc.c:PyType_Check
Unexecuted instantiation: getopt.c:PyType_Check
Unexecuted instantiation: pystrcmp.c:PyType_Check
Unexecuted instantiation: pystrtod.c:PyType_Check
Unexecuted instantiation: pystrhex.c:PyType_Check
Unexecuted instantiation: dtoa.c:PyType_Check
Unexecuted instantiation: formatter_unicode.c:PyType_Check
Unexecuted instantiation: fileutils.c:PyType_Check
Unexecuted instantiation: suggestions.c:PyType_Check
Unexecuted instantiation: perf_trampoline.c:PyType_Check
Unexecuted instantiation: perf_jit_trampoline.c:PyType_Check
Unexecuted instantiation: remote_debugging.c:PyType_Check
Unexecuted instantiation: dynload_shlib.c:PyType_Check
Unexecuted instantiation: config.c:PyType_Check
Unexecuted instantiation: gcmodule.c:PyType_Check
Unexecuted instantiation: _asynciomodule.c:PyType_Check
Unexecuted instantiation: atexitmodule.c:PyType_Check
Unexecuted instantiation: faulthandler.c:PyType_Check
Unexecuted instantiation: posixmodule.c:PyType_Check
Unexecuted instantiation: signalmodule.c:PyType_Check
Unexecuted instantiation: _tracemalloc.c:PyType_Check
Unexecuted instantiation: _suggestions.c:PyType_Check
Unexecuted instantiation: _datetimemodule.c:PyType_Check
Unexecuted instantiation: _codecsmodule.c:PyType_Check
Unexecuted instantiation: _collectionsmodule.c:PyType_Check
Unexecuted instantiation: errnomodule.c:PyType_Check
Unexecuted instantiation: _iomodule.c:PyType_Check
Unexecuted instantiation: iobase.c:PyType_Check
Unexecuted instantiation: fileio.c:PyType_Check
Unexecuted instantiation: bytesio.c:PyType_Check
Unexecuted instantiation: bufferedio.c:PyType_Check
Unexecuted instantiation: textio.c:PyType_Check
Unexecuted instantiation: stringio.c:PyType_Check
Unexecuted instantiation: itertoolsmodule.c:PyType_Check
Unexecuted instantiation: sre.c:PyType_Check
Unexecuted instantiation: _sysconfig.c:PyType_Check
Unexecuted instantiation: _threadmodule.c:PyType_Check
Unexecuted instantiation: timemodule.c:PyType_Check
Unexecuted instantiation: _typesmodule.c:PyType_Check
Unexecuted instantiation: _typingmodule.c:PyType_Check
Unexecuted instantiation: _weakref.c:PyType_Check
_abc.c:PyType_Check
Line
Count
Source
820
2.27k
static inline int PyType_Check(PyObject *op) {
821
2.27k
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
2.27k
}
Unexecuted instantiation: _functoolsmodule.c:PyType_Check
Unexecuted instantiation: _localemodule.c:PyType_Check
Unexecuted instantiation: _opcode.c:PyType_Check
Unexecuted instantiation: _operator.c:PyType_Check
Unexecuted instantiation: _stat.c:PyType_Check
Unexecuted instantiation: symtablemodule.c:PyType_Check
Unexecuted instantiation: pwdmodule.c:PyType_Check
Unexecuted instantiation: getpath.c:PyType_Check
Unexecuted instantiation: frozen.c:PyType_Check
Unexecuted instantiation: getbuildinfo.c:PyType_Check
Unexecuted instantiation: peg_api.c:PyType_Check
Unexecuted instantiation: file_tokenizer.c:PyType_Check
Unexecuted instantiation: helpers.c:PyType_Check
Unexecuted instantiation: myreadline.c:PyType_Check
abstract.c:PyType_Check
Line
Count
Source
820
29.6M
static inline int PyType_Check(PyObject *op) {
821
29.6M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
29.6M
}
Unexecuted instantiation: boolobject.c:PyType_Check
Unexecuted instantiation: bytes_methods.c:PyType_Check
Unexecuted instantiation: bytearrayobject.c:PyType_Check
Unexecuted instantiation: capsule.c:PyType_Check
Unexecuted instantiation: cellobject.c:PyType_Check
Unexecuted instantiation: classobject.c:PyType_Check
Unexecuted instantiation: codeobject.c:PyType_Check
Unexecuted instantiation: complexobject.c:PyType_Check
descrobject.c:PyType_Check
Line
Count
Source
820
6.94M
static inline int PyType_Check(PyObject *op) {
821
6.94M
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
6.94M
}
Unexecuted instantiation: enumobject.c:PyType_Check
genobject.c:PyType_Check
Line
Count
Source
820
1.87k
static inline int PyType_Check(PyObject *op) {
821
1.87k
    return PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TYPE_SUBCLASS);
822
1.87k
}
Unexecuted instantiation: fileobject.c:PyType_Check
Unexecuted instantiation: frameobject.c:PyType_Check
Unexecuted instantiation: funcobject.c:PyType_Check
Unexecuted instantiation: interpolationobject.c:PyType_Check
Unexecuted instantiation: iterobject.c:PyType_Check
Unexecuted instantiation: odictobject.c:PyType_Check
Unexecuted instantiation: methodobject.c:PyType_Check
Unexecuted instantiation: namespaceobject.c:PyType_Check
Unexecuted instantiation: _contextvars.c:PyType_Check
Unexecuted instantiation: Python-ast.c:PyType_Check
Unexecuted instantiation: Python-tokenize.c:PyType_Check
Unexecuted instantiation: asdl.c:PyType_Check
Unexecuted instantiation: assemble.c:PyType_Check
Unexecuted instantiation: ast.c:PyType_Check
Unexecuted instantiation: ast_preprocess.c:PyType_Check
Unexecuted instantiation: ast_unparse.c:PyType_Check
Unexecuted instantiation: critical_section.c:PyType_Check
Unexecuted instantiation: crossinterp.c:PyType_Check
Unexecuted instantiation: getcopyright.c:PyType_Check
Unexecuted instantiation: getplatform.c:PyType_Check
Unexecuted instantiation: getversion.c:PyType_Check
Unexecuted instantiation: optimizer.c:PyType_Check
Unexecuted instantiation: pathconfig.c:PyType_Check
Unexecuted instantiation: structmember.c:PyType_Check
Unexecuted instantiation: pegen.c:PyType_Check
Unexecuted instantiation: pegen_errors.c:PyType_Check
Unexecuted instantiation: parser.c:PyType_Check
Unexecuted instantiation: buffer.c:PyType_Check
Unexecuted instantiation: lexer.c:PyType_Check
Unexecuted instantiation: state.c:PyType_Check
Unexecuted instantiation: readline_tokenizer.c:PyType_Check
Unexecuted instantiation: string_tokenizer.c:PyType_Check
Unexecuted instantiation: utf8_tokenizer.c:PyType_Check
Unexecuted instantiation: getcompiler.c:PyType_Check
Unexecuted instantiation: mystrtoul.c:PyType_Check
Unexecuted instantiation: token.c:PyType_Check
Unexecuted instantiation: action_helpers.c:PyType_Check
Unexecuted instantiation: string_parser.c:PyType_Check
823
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
824
629M
#  define PyType_Check(op) PyType_Check(_PyObject_CAST(op))
825
#endif
826
827
#define _PyType_CAST(op) \
828
366M
    (assert(PyType_Check(op)), _Py_CAST(PyTypeObject*, (op)))
829
830
17.4M
static inline int PyType_CheckExact(PyObject *op) {
831
17.4M
    return Py_IS_TYPE(op, &PyType_Type);
832
17.4M
}
Unexecuted instantiation: bytesobject.c:PyType_CheckExact
Unexecuted instantiation: call.c:PyType_CheckExact
Unexecuted instantiation: exceptions.c:PyType_CheckExact
Unexecuted instantiation: genericaliasobject.c:PyType_CheckExact
Unexecuted instantiation: floatobject.c:PyType_CheckExact
Unexecuted instantiation: listobject.c:PyType_CheckExact
Unexecuted instantiation: longobject.c:PyType_CheckExact
Unexecuted instantiation: dictobject.c:PyType_CheckExact
Unexecuted instantiation: memoryobject.c:PyType_CheckExact
Unexecuted instantiation: moduleobject.c:PyType_CheckExact
Unexecuted instantiation: object.c:PyType_CheckExact
Unexecuted instantiation: obmalloc.c:PyType_CheckExact
Unexecuted instantiation: picklebufobject.c:PyType_CheckExact
Unexecuted instantiation: rangeobject.c:PyType_CheckExact
Unexecuted instantiation: setobject.c:PyType_CheckExact
Unexecuted instantiation: sliceobject.c:PyType_CheckExact
Unexecuted instantiation: structseq.c:PyType_CheckExact
Unexecuted instantiation: templateobject.c:PyType_CheckExact
Unexecuted instantiation: tupleobject.c:PyType_CheckExact
Unexecuted instantiation: typeobject.c:PyType_CheckExact
Unexecuted instantiation: typevarobject.c:PyType_CheckExact
Unexecuted instantiation: unicodeobject.c:PyType_CheckExact
Unexecuted instantiation: unicodectype.c:PyType_CheckExact
Unexecuted instantiation: unionobject.c:PyType_CheckExact
Unexecuted instantiation: weakrefobject.c:PyType_CheckExact
Unexecuted instantiation: _warnings.c:PyType_CheckExact
Unexecuted instantiation: bltinmodule.c:PyType_CheckExact
Unexecuted instantiation: ceval.c:PyType_CheckExact
Unexecuted instantiation: codecs.c:PyType_CheckExact
Unexecuted instantiation: codegen.c:PyType_CheckExact
Unexecuted instantiation: compile.c:PyType_CheckExact
Unexecuted instantiation: context.c:PyType_CheckExact
Unexecuted instantiation: errors.c:PyType_CheckExact
Unexecuted instantiation: flowgraph.c:PyType_CheckExact
Unexecuted instantiation: frame.c:PyType_CheckExact
Unexecuted instantiation: future.c:PyType_CheckExact
Unexecuted instantiation: gc.c:PyType_CheckExact
Unexecuted instantiation: gc_gil.c:PyType_CheckExact
Unexecuted instantiation: getargs.c:PyType_CheckExact
Unexecuted instantiation: ceval_gil.c:PyType_CheckExact
Unexecuted instantiation: hamt.c:PyType_CheckExact
Unexecuted instantiation: hashtable.c:PyType_CheckExact
Unexecuted instantiation: import.c:PyType_CheckExact
Unexecuted instantiation: importdl.c:PyType_CheckExact
Unexecuted instantiation: initconfig.c:PyType_CheckExact
Unexecuted instantiation: instrumentation.c:PyType_CheckExact
Unexecuted instantiation: instruction_sequence.c:PyType_CheckExact
Unexecuted instantiation: intrinsics.c:PyType_CheckExact
Unexecuted instantiation: legacy_tracing.c:PyType_CheckExact
Unexecuted instantiation: lock.c:PyType_CheckExact
Unexecuted instantiation: marshal.c:PyType_CheckExact
Unexecuted instantiation: modsupport.c:PyType_CheckExact
Unexecuted instantiation: mysnprintf.c:PyType_CheckExact
Unexecuted instantiation: parking_lot.c:PyType_CheckExact
Unexecuted instantiation: preconfig.c:PyType_CheckExact
Unexecuted instantiation: pyarena.c:PyType_CheckExact
Unexecuted instantiation: pyctype.c:PyType_CheckExact
Unexecuted instantiation: pyhash.c:PyType_CheckExact
Unexecuted instantiation: pylifecycle.c:PyType_CheckExact
Unexecuted instantiation: pymath.c:PyType_CheckExact
Unexecuted instantiation: pystate.c:PyType_CheckExact
Unexecuted instantiation: pythonrun.c:PyType_CheckExact
Unexecuted instantiation: pytime.c:PyType_CheckExact
Unexecuted instantiation: qsbr.c:PyType_CheckExact
Unexecuted instantiation: bootstrap_hash.c:PyType_CheckExact
Unexecuted instantiation: specialize.c:PyType_CheckExact
Unexecuted instantiation: symtable.c:PyType_CheckExact
Unexecuted instantiation: sysmodule.c:PyType_CheckExact
Unexecuted instantiation: thread.c:PyType_CheckExact
Unexecuted instantiation: traceback.c:PyType_CheckExact
Unexecuted instantiation: tracemalloc.c:PyType_CheckExact
Unexecuted instantiation: getopt.c:PyType_CheckExact
Unexecuted instantiation: pystrcmp.c:PyType_CheckExact
Unexecuted instantiation: pystrtod.c:PyType_CheckExact
Unexecuted instantiation: pystrhex.c:PyType_CheckExact
Unexecuted instantiation: dtoa.c:PyType_CheckExact
Unexecuted instantiation: formatter_unicode.c:PyType_CheckExact
Unexecuted instantiation: fileutils.c:PyType_CheckExact
Unexecuted instantiation: suggestions.c:PyType_CheckExact
Unexecuted instantiation: perf_trampoline.c:PyType_CheckExact
Unexecuted instantiation: perf_jit_trampoline.c:PyType_CheckExact
Unexecuted instantiation: remote_debugging.c:PyType_CheckExact
Unexecuted instantiation: dynload_shlib.c:PyType_CheckExact
Unexecuted instantiation: config.c:PyType_CheckExact
Unexecuted instantiation: gcmodule.c:PyType_CheckExact
Unexecuted instantiation: _asynciomodule.c:PyType_CheckExact
Unexecuted instantiation: atexitmodule.c:PyType_CheckExact
Unexecuted instantiation: faulthandler.c:PyType_CheckExact
Unexecuted instantiation: posixmodule.c:PyType_CheckExact
Unexecuted instantiation: signalmodule.c:PyType_CheckExact
Unexecuted instantiation: _tracemalloc.c:PyType_CheckExact
Unexecuted instantiation: _suggestions.c:PyType_CheckExact
Unexecuted instantiation: _datetimemodule.c:PyType_CheckExact
Unexecuted instantiation: _codecsmodule.c:PyType_CheckExact
Unexecuted instantiation: _collectionsmodule.c:PyType_CheckExact
Unexecuted instantiation: errnomodule.c:PyType_CheckExact
Unexecuted instantiation: _iomodule.c:PyType_CheckExact
Unexecuted instantiation: iobase.c:PyType_CheckExact
Unexecuted instantiation: fileio.c:PyType_CheckExact
Unexecuted instantiation: bytesio.c:PyType_CheckExact
Unexecuted instantiation: bufferedio.c:PyType_CheckExact
Unexecuted instantiation: textio.c:PyType_CheckExact
Unexecuted instantiation: stringio.c:PyType_CheckExact
Unexecuted instantiation: itertoolsmodule.c:PyType_CheckExact
Unexecuted instantiation: sre.c:PyType_CheckExact
Unexecuted instantiation: _sysconfig.c:PyType_CheckExact
Unexecuted instantiation: _threadmodule.c:PyType_CheckExact
Unexecuted instantiation: timemodule.c:PyType_CheckExact
Unexecuted instantiation: _typesmodule.c:PyType_CheckExact
Unexecuted instantiation: _typingmodule.c:PyType_CheckExact
Unexecuted instantiation: _weakref.c:PyType_CheckExact
Unexecuted instantiation: _abc.c:PyType_CheckExact
Unexecuted instantiation: _functoolsmodule.c:PyType_CheckExact
Unexecuted instantiation: _localemodule.c:PyType_CheckExact
Unexecuted instantiation: _opcode.c:PyType_CheckExact
Unexecuted instantiation: _operator.c:PyType_CheckExact
Unexecuted instantiation: _stat.c:PyType_CheckExact
Unexecuted instantiation: symtablemodule.c:PyType_CheckExact
Unexecuted instantiation: pwdmodule.c:PyType_CheckExact
Unexecuted instantiation: getpath.c:PyType_CheckExact
Unexecuted instantiation: frozen.c:PyType_CheckExact
Unexecuted instantiation: getbuildinfo.c:PyType_CheckExact
Unexecuted instantiation: peg_api.c:PyType_CheckExact
Unexecuted instantiation: file_tokenizer.c:PyType_CheckExact
Unexecuted instantiation: helpers.c:PyType_CheckExact
Unexecuted instantiation: myreadline.c:PyType_CheckExact
abstract.c:PyType_CheckExact
Line
Count
Source
830
17.4M
static inline int PyType_CheckExact(PyObject *op) {
831
17.4M
    return Py_IS_TYPE(op, &PyType_Type);
832
17.4M
}
Unexecuted instantiation: boolobject.c:PyType_CheckExact
Unexecuted instantiation: bytes_methods.c:PyType_CheckExact
Unexecuted instantiation: bytearrayobject.c:PyType_CheckExact
Unexecuted instantiation: capsule.c:PyType_CheckExact
Unexecuted instantiation: cellobject.c:PyType_CheckExact
Unexecuted instantiation: classobject.c:PyType_CheckExact
Unexecuted instantiation: codeobject.c:PyType_CheckExact
Unexecuted instantiation: complexobject.c:PyType_CheckExact
Unexecuted instantiation: descrobject.c:PyType_CheckExact
Unexecuted instantiation: enumobject.c:PyType_CheckExact
Unexecuted instantiation: genobject.c:PyType_CheckExact
Unexecuted instantiation: fileobject.c:PyType_CheckExact
Unexecuted instantiation: frameobject.c:PyType_CheckExact
Unexecuted instantiation: funcobject.c:PyType_CheckExact
Unexecuted instantiation: interpolationobject.c:PyType_CheckExact
Unexecuted instantiation: iterobject.c:PyType_CheckExact
Unexecuted instantiation: odictobject.c:PyType_CheckExact
Unexecuted instantiation: methodobject.c:PyType_CheckExact
Unexecuted instantiation: namespaceobject.c:PyType_CheckExact
Unexecuted instantiation: _contextvars.c:PyType_CheckExact
Unexecuted instantiation: Python-ast.c:PyType_CheckExact
Unexecuted instantiation: Python-tokenize.c:PyType_CheckExact
Unexecuted instantiation: asdl.c:PyType_CheckExact
Unexecuted instantiation: assemble.c:PyType_CheckExact
Unexecuted instantiation: ast.c:PyType_CheckExact
Unexecuted instantiation: ast_preprocess.c:PyType_CheckExact
Unexecuted instantiation: ast_unparse.c:PyType_CheckExact
Unexecuted instantiation: critical_section.c:PyType_CheckExact
Unexecuted instantiation: crossinterp.c:PyType_CheckExact
Unexecuted instantiation: getcopyright.c:PyType_CheckExact
Unexecuted instantiation: getplatform.c:PyType_CheckExact
Unexecuted instantiation: getversion.c:PyType_CheckExact
Unexecuted instantiation: optimizer.c:PyType_CheckExact
Unexecuted instantiation: pathconfig.c:PyType_CheckExact
Unexecuted instantiation: structmember.c:PyType_CheckExact
Unexecuted instantiation: pegen.c:PyType_CheckExact
Unexecuted instantiation: pegen_errors.c:PyType_CheckExact
Unexecuted instantiation: parser.c:PyType_CheckExact
Unexecuted instantiation: buffer.c:PyType_CheckExact
Unexecuted instantiation: lexer.c:PyType_CheckExact
Unexecuted instantiation: state.c:PyType_CheckExact
Unexecuted instantiation: readline_tokenizer.c:PyType_CheckExact
Unexecuted instantiation: string_tokenizer.c:PyType_CheckExact
Unexecuted instantiation: utf8_tokenizer.c:PyType_CheckExact
Unexecuted instantiation: getcompiler.c:PyType_CheckExact
Unexecuted instantiation: mystrtoul.c:PyType_CheckExact
Unexecuted instantiation: token.c:PyType_CheckExact
Unexecuted instantiation: action_helpers.c:PyType_CheckExact
Unexecuted instantiation: string_parser.c:PyType_CheckExact
833
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 < 0x030b0000
834
17.4M
#  define PyType_CheckExact(op) PyType_CheckExact(_PyObject_CAST(op))
835
#endif
836
837
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030d0000
838
PyAPI_FUNC(PyObject *) PyType_GetModuleByDef(PyTypeObject *, PyModuleDef *);
839
#endif
840
841
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030e0000
842
PyAPI_FUNC(int) PyType_Freeze(PyTypeObject *type);
843
#endif
844
845
#ifdef __cplusplus
846
}
847
#endif
848
#endif   // !Py_OBJECT_H