diff options
author | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-10-14 07:42:37 -0700 |
---|---|---|
committer | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-10-14 07:42:37 -0700 |
commit | b2042dbd58c043ab49e9b0dbb51bf8516fe8cea8 (patch) | |
tree | 25c7806d4c9d5fb237c0995b4bd12c4664bf853a /src/memberinfo.h | |
parent | 53272534a76a9d8cbee4ee887e1f360c4a99728b (diff) |
Initial attempt to register native C++ class methods directly to PHP
Diffstat (limited to 'src/memberinfo.h')
-rw-r--r-- | src/memberinfo.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/memberinfo.h b/src/memberinfo.h index e0cfbd8..fd9ce3d 100644 --- a/src/memberinfo.h +++ b/src/memberinfo.h @@ -49,13 +49,33 @@ public: int refcount(int change) { return _refcount += change; } /** + * Is this a property member + * @return bool + */ + virtual bool isProperty() { return false; } + + /** + * Is this a method member + * @return bool + */ + virtual bool isMethod() { return false; } + + /** * 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)=0; + virtual void declare(struct _zend_class_entry *entry, const char *name, int size, int flags) {}; + + /** + * Fill a function entry object + * @param entry Function entry + * @param classname Name of the class + */ + virtual void fill(struct _zend_function_entry *entry, const char *classname) {}; + }; /** |