pyo3/types/
code.rs

1use crate::ffi;
2use crate::PyAny;
3
4/// Represents a Python code object.
5///
6/// Values of this type are accessed via PyO3's smart pointers, e.g. as
7/// [`Py<PyCode>`][crate::Py] or [`Bound<'py, PyCode>`][crate::Bound].
8#[repr(transparent)]
9pub struct PyCode(PyAny);
10
11pyobject_native_type_core!(
12    PyCode,
13    pyobject_native_static_type_object!(ffi::PyCode_Type),
14    #checkfunction=ffi::PyCode_Check
15);
16
17#[cfg(test)]
18mod tests {
19    use super::*;
20    use crate::types::PyTypeMethods;
21    use crate::{PyTypeInfo, Python};
22
23    #[test]
24    fn test_type_object() {
25        Python::with_gil(|py| {
26            assert_eq!(PyCode::type_object(py).name().unwrap(), "code");
27        })
28    }
29}
⚠️ Internal Docs ⚠️ Not Public API 👉 Official Docs Here