123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #ifndef GD_MONO_CLASS_MEMBER_H
- #define GD_MONO_CLASS_MEMBER_H
- #include "gd_mono_header.h"
- #include <mono/metadata/object.h>
- class GDMonoClassMember {
- public:
- enum Visibility {
- PRIVATE,
- PROTECTED_AND_INTERNAL,
- INTERNAL,
- PROTECTED,
- PUBLIC
- };
- enum MemberType {
- MEMBER_TYPE_FIELD,
- MEMBER_TYPE_PROPERTY,
- MEMBER_TYPE_METHOD
- };
- virtual ~GDMonoClassMember() {}
- virtual MemberType get_member_type() = 0;
- virtual StringName get_name() = 0;
- virtual bool is_static() = 0;
- virtual Visibility get_visibility() = 0;
- virtual bool has_attribute(GDMonoClass *p_attr_class) = 0;
- virtual MonoObject *get_attribute(GDMonoClass *p_attr_class) = 0;
- };
- #endif
|