diff options
author | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-10-14 02:46:52 -0700 |
---|---|---|
committer | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-10-14 02:46:52 -0700 |
commit | 53272534a76a9d8cbee4ee887e1f360c4a99728b (patch) | |
tree | 54206aca1cfa1461ba365b05e5848f2843be91b9 /src/nullmember.h | |
parent | 777eb276f635c949ccdcf9613ad55d42190cb387 (diff) |
The initial class properties can now only be scalar values, just like in PHP
Diffstat (limited to 'src/nullmember.h')
-rw-r--r-- | src/nullmember.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/nullmember.h b/src/nullmember.h new file mode 100644 index 0000000..ea336ea --- /dev/null +++ b/src/nullmember.h @@ -0,0 +1,48 @@ +/** + * NullMember.h + * + * Implementation for a property that is initially set to NULL + * + * @author Emiel Bruijntjes <emiel.bruijntjes@copernica.com> + * @copyright 2013 Copernica BV + */ + +/** + * Set up namespace + */ +namespace Php { + +/** + * Class definition + */ +class NullMember : public MemberInfo +{ +public: + /** + * Constructor + */ + NullMember() : MemberInfo() {} + + /** + * Destructor + */ + virtual ~NullMember() {} + + /** + * Virtual method to declare the property + * @param entry Class entry + * @param name Name of the member + * @param size Size of the name + * @param flags Additional flags + */ + virtual void declare(struct _zend_class_entry *entry, const char *name, int size, int flags) + { + zend_declare_property_null(entry, name, size, flags); + } +}; + +/** + * End of namespace + */ +} + |