From 30b8d7bdadf53bcdf4caaa0d248ed0791f76643c Mon Sep 17 00:00:00 2001 From: Jeong YunWon Date: Tue, 25 Apr 2023 04:48:31 +0900 Subject: [PATCH] MemberDescrObject -> PyMemberDescriptor --- vm/src/builtins/descriptor.rs | 15 ++++++++------- vm/src/builtins/type.rs | 6 +++--- vm/src/types/zoo.rs | 2 +- vm/src/vm/context.rs | 8 ++++---- 4 files changed, 16 insertions(+), 15 deletions(-) diff --git a/vm/src/builtins/descriptor.rs b/vm/src/builtins/descriptor.rs index 9df375d8b..2425f3ffe 100644 --- a/vm/src/builtins/descriptor.rs +++ b/vm/src/builtins/descriptor.rs @@ -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 { ctx.types.member_descriptor_type } @@ -101,7 +102,7 @@ fn calculate_qualname(descr: &DescrObject, vm: &VirtualMachine) -> PyResult Option { 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, _vm: &VirtualMachine) -> PyResult { 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, @@ -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); } diff --git a/vm/src/builtins/type.rs b/vm/src/builtins/type.rs index 3f9193a75..5aca7ed07 100644 --- a/vm/src/builtins/type.rs +++ b/vm/src/builtins/type.rs @@ -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 = - vm.ctx.new_pyref(MemberDescrObject { + let member_descriptor: PyRef = + vm.ctx.new_pyref(PyMemberDescriptor { common: DescrObject { typ: typ.clone(), name: vm.ctx.intern_str(member.as_str()), diff --git a/vm/src/types/zoo.rs b/vm/src/types/zoo.rs index 442084dea..a2d2a5c79 100644 --- a/vm/src/types/zoo.rs +++ b/vm/src/types/zoo.rs @@ -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(), } } diff --git a/vm/src/vm/context.rs b/vm/src/vm/context.rs index b3273c82c..c50f2a83e 100644 --- a/vm/src/vm/context.rs +++ b/vm/src/vm/context.rs @@ -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, - ) -> PyRef { + ) -> PyRef { 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),