Đối tượng mô tả

"Mô tả" là các đối tượng mô tả một số thuộc tính của một đối tượng. Chúng được tìm thấy trong từ điển của các đối tượng loại.

PyTypeObject PyProperty_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho các kiểu mô tả tích hợp.

PyObject *PyDescr_NewGetSet(PyTypeObject *type, struct PyGetSetDef *getset)
Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định.
PyObject *PyDescr_NewMember(PyTypeObject *type, struct PyMemberDef *meth)
Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định.
PyTypeObject PyMemberDescr_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho các đối tượng mô tả thành viên được tạo từ cấu trúc PyMemberDef. Các bộ mô tả này hiển thị các trường của cấu trúc C dưới dạng thuộc tính trên một loại và tương ứng với các đối tượng types.MemberDescriptorType trong Python.

PyTypeObject PyGetSetDescr_Type
Một phần của ABI ổn định.

Đối tượng loại cho các đối tượng mô tả get/set được tạo từ cấu trúc PyGetSetDef. Các bộ mô tả này triển khai các thuộc tính có giá trị được tính toán bởi các hàm getter và setter của C và được sử dụng cho nhiều thuộc tính kiểu tích hợp sẵn.

PyObject *PyDescr_NewMethod(PyTypeObject *type, struct PyMethodDef *meth)
Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định.
PyTypeObject PyMethodDescr_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho các đối tượng mô tả phương thức được tạo từ cấu trúc PyMethodDef. Các bộ mô tả này hiển thị các hàm C dưới dạng các phương thức trên một loại và tương ứng với các đối tượng types.MemberDescriptorType trong Python.

PyObject *PyDescr_NewWrapper(PyTypeObject *type, struct wrapperbase *wrapper, void *wrapped)
Giá trị trả về: Tham chiếu mới.
PyTypeObject PyWrapperDescr_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho các đối tượng mô tả trình bao bọc được tạo bởi PyDescr_NewWrapper()PyWrapper_New(). Bộ mô tả trình bao bọc được sử dụng nội bộ để hiển thị các phương thức đặc biệt được triển khai thông qua cấu trúc trình bao bọc và xuất hiện trong Python dưới dạng đối tượng types.WrapperDescriptorType.

PyObject *PyDescr_NewClassMethod(PyTypeObject *type, PyMethodDef *method)
Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định.
int PyDescr_IsData(PyObject *descr)

Trả về giá trị khác 0 nếu đối tượng mô tả descr mô tả một thuộc tính dữ liệu hoặc 0 nếu nó mô tả một phương thức. descr phải là một đối tượng mô tả; không có kiểm tra lỗi.

PyObject *PyWrapper_New(PyObject*, PyObject*)
Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định.

Bộ mô tả tích hợp

PyTypeObject PySuper_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho siêu đối tượng. Đây là đối tượng tương tự như super trong lớp Python.

PyTypeObject PyClassMethod_Type

Kiểu của các đối tượng phương thức lớp. Đây là đối tượng tương tự như classmethod trong lớp Python.

PyTypeObject PyClassMethodDescr_Type
Một phần của ABI ổn định.

Đối tượng kiểu cho các đối tượng mô tả phương thức lớp C. Đây là loại mô tả được tạo cho classmethod() được xác định trong các loại tiện ích mở rộng C và là đối tượng tương tự như classmethod trong Python.

PyObject *PyClassMethod_New(PyObject *callable)

Tạo một đối tượng classmethod mới bao bọc callable. callable phải là đối tượng có thể gọi được và không được là NULL.

Nếu thành công, hàm này trả về strong reference cho bộ mô tả phương thức lớp mới. Nếu thất bại, hàm này trả về NULL với một bộ ngoại lệ.

PyTypeObject PyStaticMethod_Type

Loại đối tượng phương thức tĩnh. Đây là đối tượng tương tự như staticmethod trong lớp Python.

PyObject *PyStaticMethod_New(PyObject *callable)

Tạo một đối tượng staticmethod mới bao bọc callable. callable phải là đối tượng có thể gọi được và không được là NULL.

Nếu thành công, hàm này trả về strong reference cho bộ mô tả phương thức tĩnh mới. Nếu thất bại, hàm này trả về NULL với một bộ ngoại lệ.