diff options
author | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2014-02-28 10:25:01 +0100 |
---|---|---|
committer | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2014-02-28 10:25:01 +0100 |
commit | 71055ebdea1e8eec30747a04f36e0c10e750bff5 (patch) | |
tree | 18ed63d5fe64a936c284a38d4f72921a4ddc97df /include/member.h | |
parent | 85349bbb642a83012a7d0dbccde8b7c1eea1b914 (diff) |
a lot of refactoring, to make it much easier to define classes in an extension
Diffstat (limited to 'include/member.h')
-rw-r--r-- | include/member.h | 308 |
1 files changed, 155 insertions, 153 deletions
diff --git a/include/member.h b/include/member.h index 564b1b6..9104c56 100644 --- a/include/member.h +++ b/include/member.h @@ -5,6 +5,8 @@ * * @author Emiel Bruijntjes <emiel.bruijntjes@copernica.com> * @copyright 2013 Copernica BV + * + * @todo remove this file completely */ /** @@ -22,159 +24,159 @@ namespace Php { */ class MemberInfo; -/** - * Class definition - */ -class Member -{ -public: - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - */ - Member(const char *name, MemberModifier flags); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, std::nullptr_t value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, int value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, long value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, bool value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, char value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, const std::string &value); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - * @param size String length - */ - Member(const char *name, MemberModifier flags, const char *value, int size = -1); - - /** - * Constructor - * @param name Name of the member - * @param flags Flag access to a class member (public, protected etc) - * @param value The value to add - */ - Member(const char *name, MemberModifier flags, double value); - - /** - * Constructor - * @param name Name of the method - * @param flags Flag access to a class member (public, protected etc) - * @param method The method to add - */ - Member(const char *name, MemberModifier flags, const _Method &method, const std::initializer_list<Argument> &arguments = {}); - - /** - * Copy constructor - * @param member The member to copy - */ - Member(const Member &member); - - /** - * Move constructor - * @param member The member to move - */ - Member(Member &&member); - - /** - * Destructor - */ - virtual ~Member(); - - /** - * Internal method to declare the property - * @param zend_class_entry - * @internal - */ - void declare(struct _zend_class_entry *entry); - - /** - * Internal method to fill a function entry - * @param zend_function_entry - * @param classname - * @internal - */ - void fill(struct _zend_function_entry *entry, const char *classname); - - /** - * Is this a property member - * @return bool - */ - bool isProperty(); - - /** - * Is this a method member - * @return bool - */ - bool isMethod(); - - -private: - /** - * Name of the member - * @var string - */ - std::string _name; - - /** - * Flag access to a class member (public, protected etc) - * @var MemberModifier - */ - MemberModifier _flags; - - /** - * The implementation for the member - * @var MemberInfo - */ - MemberInfo *_info; - - -}; - +///** +// * Class definition +// */ +//class Member +//{ +//public: +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// */ +// Member(const char *name, MemberModifier flags); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, std::nullptr_t value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, int value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, long value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, bool value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, char value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, const std::string &value); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// * @param size String length +// */ +// Member(const char *name, MemberModifier flags, const char *value, int size = -1); +// +// /** +// * Constructor +// * @param name Name of the member +// * @param flags Flag access to a class member (public, protected etc) +// * @param value The value to add +// */ +// Member(const char *name, MemberModifier flags, double value); +// +// /** +// * Constructor +// * @param name Name of the method +// * @param flags Flag access to a class member (public, protected etc) +// * @param method The method to add +// */ +// Member(const char *name, MemberModifier flags, const _Method &method, const std::initializer_list<Argument> &arguments = {}); +// +// /** +// * Copy constructor +// * @param member The member to copy +// */ +// Member(const Member &member); +// +// /** +// * Move constructor +// * @param member The member to move +// */ +// Member(Member &&member); +// +// /** +// * Destructor +// */ +// virtual ~Member(); +// +// /** +// * Internal method to declare the property +// * @param zend_class_entry +// * @internal +// */ +// void declare(struct _zend_class_entry *entry); +// +// /** +// * Internal method to fill a function entry +// * @param zend_function_entry +// * @param classname +// * @internal +// */ +// void fill(struct _zend_function_entry *entry, const char *classname); +// +// /** +// * Is this a property member +// * @return bool +// */ +// bool isProperty(); +// +// /** +// * Is this a method member +// * @return bool +// */ +// bool isMethod(); +// +// +//private: +// /** +// * Name of the member +// * @var string +// */ +// std::string _name; +// +// /** +// * Flag access to a class member (public, protected etc) +// * @var MemberModifier +// */ +// MemberModifier _flags; +// +// /** +// * The implementation for the member +// * @var MemberInfo +// */ +// MemberInfo *_info; +// +// +//}; +// /** * End of namespace */ |