MemberDescrObject -> PyMemberDescriptor

This commit is contained in:
Jeong YunWon committed 2023-04-25 04:54:51 +09:00
1 parent 436624b7a3
commit 30b8d7bdad
4 files changed
+16 -15

No files matched your search

+8 -7
View File
@@ -74,14 +74,15 @@ impl std::fmt::Debug for PyMemberDef {
}
}
// PyMemberDescrObject in CPython
#[pyclass(name = "member_descriptor", module = false)]
#[derive(Debug)]
pub struct MemberDescrObject {
pub struct PyMemberDescriptor {
pub common: DescrObject,
pub member: PyMemberDef,
}
impl PyPayload for MemberDescrObject {
impl PyPayload for PyMemberDescriptor {
fn class(ctx: &Context) -> &'static Py<PyType> {
ctx.types.member_descriptor_type
}
@@ -101,7 +102,7 @@ fn calculate_qualname(descr: &DescrObject, vm: &VirtualMachine) -> PyResult<Opti
}
#[pyclass(with(GetDescriptor, Constructor, Representable), flags(BASETYPE))]
impl MemberDescrObject {
impl PyMemberDescriptor {
#[pygetset(magic)]
fn doc(&self) -> Option<String> {
self.member.doc.to_owned()
@@ -186,9 +187,9 @@ fn set_slot_at_object(
Ok(())
}
impl Unconstructible for MemberDescrObject {}
impl Unconstructible for PyMemberDescriptor {}
impl Representable for MemberDescrObject {
impl Representable for PyMemberDescriptor {
#[inline]
fn repr_str(zelf: &Py<Self>, _vm: &VirtualMachine) -> PyResult<String> {
Ok(format!(
@@ -199,7 +200,7 @@ impl Representable for MemberDescrObject {
}
}
impl GetDescriptor for MemberDescrObject {
impl GetDescriptor for PyMemberDescriptor {
fn descr_get(
zelf: PyObjectRef,
obj: Option<PyObjectRef>,
@@ -218,5 +219,5 @@ impl GetDescriptor for MemberDescrObject {
pub fn init(context: &Context) {
let member_descriptor_type = &context.types.member_descriptor_type;
MemberDescrObject::extend_class(context, member_descriptor_type);
PyMemberDescriptor::extend_class(context, member_descriptor_type);
}
+3 -3
View File
@@ -5,7 +5,7 @@ use super::{
use crate::{
builtins::{
descriptor::{
DescrObject, MemberDescrObject, MemberGetter, MemberKind, MemberSetter, PyMemberDef,
DescrObject, MemberGetter, MemberKind, MemberSetter, PyMemberDef, PyMemberDescriptor,
},
function::PyCellRef,
tuple::{IntoPyTuple, PyTupleTyped},
@@ -811,8 +811,8 @@ impl PyType {
setter: MemberSetter::Offset(offset),
doc: None,
};
let member_descriptor: PyRef<MemberDescrObject> =
vm.ctx.new_pyref(MemberDescrObject {
let member_descriptor: PyRef<PyMemberDescriptor> =
vm.ctx.new_pyref(PyMemberDescriptor {
common: DescrObject {
typ: typ.clone(),
name: vm.ctx.intern_str(member.as_str()),
+1 -1
View File
@@ -177,7 +177,7 @@ impl TypeZoo {
not_implemented_type: singletons::PyNotImplemented::init_builtin_type(),
generic_alias_type: genericalias::PyGenericAlias::init_builtin_type(),
union_type: union_::PyUnion::init_builtin_type(),
member_descriptor_type: descriptor::MemberDescrObject::init_builtin_type(),
member_descriptor_type: descriptor::PyMemberDescriptor::init_builtin_type(),
}
}
+4 -4
View File
@@ -4,8 +4,8 @@ use crate::{
bytes,
code::{self, PyCode},
descriptor::{
DescrObject, MemberDescrObject, MemberGetter, MemberKind, MemberSetter,
MemberSetterFunc, PyMemberDef,
DescrObject, MemberGetter, MemberKind, MemberSetter, MemberSetterFunc, PyMemberDef,
PyMemberDescriptor,
},
getset::PyGetSet,
object, pystr,
@@ -500,7 +500,7 @@ impl Context {
getter: fn(&VirtualMachine, PyObjectRef) -> PyResult,
setter: MemberSetterFunc,
class: &'static Py<PyType>,
) -> PyRef<MemberDescrObject> {
) -> PyRef<PyMemberDescriptor> {
let member_def = PyMemberDef {
name: name.to_owned(),
kind: member_kind,
@@ -508,7 +508,7 @@ impl Context {
setter: MemberSetter::Setter(setter),
doc: None,
};
let member_descriptor = MemberDescrObject {
let member_descriptor = PyMemberDescriptor {
common: DescrObject {
typ: class.to_owned(),
name: self.intern_str(name),