onphp.h File Reference

#include "php.h"
#include "zend_interfaces.h"

Include dependency graph for onphp.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define ONPHP_VERSION   "0.10.8"
#define ONPHP_MODULE_NAME   "onPHP"
#define ZVAL_FREE(z)   zval_dtor(z); FREE_ZVAL(z);
#define ONPHP_ME(class_name, function_name, arg_info, flags)   PHP_ME(onphp_ ## class_name, function_name, arg_info, flags)
#define ONPHP_ABSTRACT_ME(class_name, function_name, arg_info, flags)   ZEND_FENTRY(function_name, NULL, arg_info, flags|ZEND_ACC_ABSTRACT)
#define REGISTER_ONPHP_INTERFACE(class_name)   spl_register_interface(&onphp_ce_ ## class_name, # class_name, onphp_funcs_ ## class_name TSRMLS_CC);
#define REGISTER_ONPHP_IMPLEMENTS(class_name, interface_name)   zend_class_implements(onphp_ce_ ## class_name TSRMLS_CC, 1, onphp_ce_ ## interface_name);
#define REGISTER_ONPHP_STD_CLASS(class_name, obj_ctor)   spl_register_std_class(&onphp_ce_ ## class_name, # class_name, obj_ctor, NULL TSRMLS_CC);
#define REGISTER_ONPHP_STD_CLASS_EX(class_name)   spl_register_std_class(&onphp_ce_ ## class_name, # class_name, onphp_empty_object_new, onphp_funcs_ ## class_name TSRMLS_CC);
#define REGISTER_ONPHP_SUB_CLASS_EX(class_name, parent_class_name)   spl_register_sub_class(&onphp_ce_ ## class_name, onphp_ce_ ## parent_class_name, # class_name, onphp_empty_object_new, onphp_funcs_ ## class_name TSRMLS_CC);
#define REGISTER_ONPHP_CUSTOM_SUB_CLASS_EX(class_name, parent_class_name, obj_ctor, funcs)   spl_register_sub_class(&onphp_ce_ ## class_name, onphp_ce_ ## parent_class_name, # class_name, obj_ctor, funcs TSRMLS_CC);
#define REGISTER_ONPHP_PROPERTY(class_name, prop_name, prop_flags)   zend_declare_property_null(onphp_ce_ ## class_name, prop_name, strlen(prop_name), prop_flags TSRMLS_CC);
#define REGISTER_ONPHP_PROPERTY_BOOL(class_name, prop_name, bool, prop_flags)   zend_declare_property_bool(onphp_ce_ ## class_name, prop_name, strlen(prop_name), bool, prop_flags TSRMLS_CC);
#define REGISTER_ONPHP_CLASS_CONST_LONG(class_name, const_name, value)   zend_declare_class_constant_long(onphp_ce_ ## class_name, const_name, strlen(const_name), (long) value TSRMLS_CC);
#define ONPHP_READ_PROPERTY(class, property)   zend_read_property(Z_OBJCE_P(class), class, property, strlen(property), 1 TSRMLS_CC)
#define ONPHP_UPDATE_PROPERTY(class, property, value)   zend_update_property(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)
#define ONPHP_UPDATE_PROPERTY_BOOL(class, property, value)   zend_update_property_bool(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)
#define ONPHP_UPDATE_PROPERTY_LONG(class, property, value)   zend_update_property_long(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)
#define ONPHP_METHOD(class_name, function_name)   PHP_METHOD(onphp_ ## class_name, function_name)
#define ONPHP_ARGINFO_ONE
#define ONPHP_ARGINFO_ONE_REF
#define ONPHP_ARGINFO_TWO
#define ONPHP_ARGINFO_THREE
#define onphp_empty_object   zend_object

Functions

void onphp_empty_object_free_storage (void *object TSRMLS_DC)
zend_object_value onphp_empty_object_spawn (zend_class_entry *class_type, onphp_empty_object **object TSRMLS_DC)
zend_object_value onphp_empty_object_new (zend_class_entry *class_type TSRMLS_DC)


Define Documentation

#define ONPHP_ABSTRACT_ME ( class_name,
function_name,
arg_info,
flags   )     ZEND_FENTRY(function_name, NULL, arg_info, flags|ZEND_ACC_ABSTRACT)

Definition at line 26 of file onphp.h.

#define ONPHP_ARGINFO_ONE

Value:

ZEND_BEGIN_ARG_INFO(arginfo_one, 0) \
        ZEND_ARG_INFO(0, first) \
    ZEND_END_ARG_INFO()

Definition at line 71 of file onphp.h.

#define ONPHP_ARGINFO_ONE_REF

Value:

ZEND_BEGIN_ARG_INFO(arginfo_one_ref, 0) \
        ZEND_ARG_INFO(1, value) \
    ZEND_END_ARG_INFO() \

Definition at line 76 of file onphp.h.

#define ONPHP_ARGINFO_THREE

Value:

ZEND_BEGIN_ARG_INFO(arginfo_three, 0) \
        ZEND_ARG_INFO(0, first) \
        ZEND_ARG_INFO(0, second) \
        ZEND_ARG_INFO(0, third) \
    ZEND_END_ARG_INFO()

Definition at line 87 of file onphp.h.

#define ONPHP_ARGINFO_TWO

Value:

ZEND_BEGIN_ARG_INFO(arginfo_two, 0) \
        ZEND_ARG_INFO(0, first) \
        ZEND_ARG_INFO(0, second) \
    ZEND_END_ARG_INFO()

Definition at line 81 of file onphp.h.

#define onphp_empty_object   zend_object

Definition at line 94 of file onphp.h.

Referenced by onphp_empty_object_free_storage(), and onphp_empty_object_spawn().

#define ONPHP_ME ( class_name,
function_name,
arg_info,
flags   )     PHP_ME(onphp_ ## class_name, function_name, arg_info, flags)

Definition at line 23 of file onphp.h.

#define ONPHP_METHOD ( class_name,
function_name   )     PHP_METHOD(onphp_ ## class_name, function_name)

Definition at line 68 of file onphp.h.

#define ONPHP_MODULE_NAME   "onPHP"

Definition at line 19 of file onphp.h.

#define ONPHP_READ_PROPERTY ( class,
property   )     zend_read_property(Z_OBJCE_P(class), class, property, strlen(property), 1 TSRMLS_CC)

Definition at line 56 of file onphp.h.

Referenced by ONPHP_METHOD().

#define ONPHP_UPDATE_PROPERTY ( class,
property,
value   )     zend_update_property(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)

Definition at line 59 of file onphp.h.

Referenced by ONPHP_METHOD().

#define ONPHP_UPDATE_PROPERTY_BOOL ( class,
property,
value   )     zend_update_property_bool(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)

Definition at line 62 of file onphp.h.

Referenced by ONPHP_METHOD().

#define ONPHP_UPDATE_PROPERTY_LONG ( class,
property,
value   )     zend_update_property_long(Z_OBJCE_P(class), class, property, strlen(property), value TSRMLS_CC)

Definition at line 65 of file onphp.h.

#define ONPHP_VERSION   "0.10.8"

Definition at line 18 of file onphp.h.

Referenced by PHP_MINFO_FUNCTION(), and startCap().

#define REGISTER_ONPHP_CLASS_CONST_LONG ( class_name,
const_name,
value   )     zend_declare_class_constant_long(onphp_ce_ ## class_name, const_name, strlen(const_name), (long) value TSRMLS_CC);

Definition at line 53 of file onphp.h.

#define REGISTER_ONPHP_CUSTOM_SUB_CLASS_EX ( class_name,
parent_class_name,
obj_ctor,
funcs   )     spl_register_sub_class(&onphp_ce_ ## class_name, onphp_ce_ ## parent_class_name, # class_name, obj_ctor, funcs TSRMLS_CC);

Definition at line 44 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_IMPLEMENTS ( class_name,
interface_name   )     zend_class_implements(onphp_ce_ ## class_name TSRMLS_CC, 1, onphp_ce_ ## interface_name);

Definition at line 32 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_INTERFACE ( class_name   )     spl_register_interface(&onphp_ce_ ## class_name, # class_name, onphp_funcs_ ## class_name TSRMLS_CC);

Definition at line 29 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_PROPERTY ( class_name,
prop_name,
prop_flags   )     zend_declare_property_null(onphp_ce_ ## class_name, prop_name, strlen(prop_name), prop_flags TSRMLS_CC);

Definition at line 47 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_PROPERTY_BOOL ( class_name,
prop_name,
bool,
prop_flags   )     zend_declare_property_bool(onphp_ce_ ## class_name, prop_name, strlen(prop_name), bool, prop_flags TSRMLS_CC);

Definition at line 50 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_STD_CLASS ( class_name,
obj_ctor   )     spl_register_std_class(&onphp_ce_ ## class_name, # class_name, obj_ctor, NULL TSRMLS_CC);

Definition at line 35 of file onphp.h.

#define REGISTER_ONPHP_STD_CLASS_EX ( class_name   )     spl_register_std_class(&onphp_ce_ ## class_name, # class_name, onphp_empty_object_new, onphp_funcs_ ## class_name TSRMLS_CC);

Definition at line 38 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define REGISTER_ONPHP_SUB_CLASS_EX ( class_name,
parent_class_name   )     spl_register_sub_class(&onphp_ce_ ## class_name, onphp_ce_ ## parent_class_name, # class_name, onphp_empty_object_new, onphp_funcs_ ## class_name TSRMLS_CC);

Definition at line 41 of file onphp.h.

Referenced by PHP_MINIT_FUNCTION().

#define ZVAL_FREE (  )     zval_dtor(z); FREE_ZVAL(z);

Definition at line 21 of file onphp.h.

Referenced by ONPHP_METHOD().


Function Documentation

void onphp_empty_object_free_storage ( void *object  TSRMLS_DC  ) 

Definition at line 26 of file onphp.c.

References onphp_empty_object.

Referenced by onphp_empty_object_spawn().

zend_object_value onphp_empty_object_new ( zend_class_entry *class_type  TSRMLS_DC  ) 

Definition at line 72 of file onphp.c.

References onphp_empty_object_spawn().

Referenced by ONPHP_METHOD().

Here is the call graph for this function:

zend_object_value onphp_empty_object_spawn ( zend_class_entry *  class_type,
onphp_empty_object **object  TSRMLS_DC 
)

Definition at line 35 of file onphp.c.

References onphp_empty_object, and onphp_empty_object_free_storage().

Referenced by onphp_empty_object_new().

Here is the call graph for this function:


Generated on Sun Dec 9 21:56:42 2007 for onPHP by  doxygen 1.5.4