
extern zend_class_entry *stub_oo_abstractclass_ce;

ZEPHIR_INIT_CLASS(Stub_Oo_AbstractClass);

PHP_METHOD(Stub_Oo_AbstractClass, testMethodDeclaration);
PHP_METHOD(Stub_Oo_AbstractClass, testMethodDeclarationWithReturnType);
PHP_METHOD(Stub_Oo_AbstractClass, testMethodDeclarationWithParameter);
PHP_METHOD(Stub_Oo_AbstractClass, testMethodDeclarationWithParameterAndReturnType);
PHP_METHOD(Stub_Oo_AbstractClass, testAbstractMethodDeclaration);
PHP_METHOD(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithReturnType);
PHP_METHOD(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithParameter);
PHP_METHOD(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithParameterAndReturnType);

ZEND_BEGIN_ARG_INFO_EX(arginfo_stub_oo_abstractclass_testmethoddeclaration, 0, 0, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_stub_oo_abstractclass_testmethoddeclarationwithreturntype, 0, 0, IS_STRING, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_INFO_EX(arginfo_stub_oo_abstractclass_testmethoddeclarationwithparameter, 0, 0, 1)
	ZEND_ARG_INFO(0, a)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_stub_oo_abstractclass_testmethoddeclarationwithparameterandreturntype, 0, 1, IS_STRING, 0)
	ZEND_ARG_INFO(0, a)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_INFO_EX(arginfo_stub_oo_abstractclass_testabstractmethoddeclaration, 0, 0, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithreturntype, 0, 0, IS_STRING, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_INFO_EX(arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithparameter, 0, 0, 1)
	ZEND_ARG_INFO(0, a)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithparameterandreturntype, 0, 1, IS_STRING, 0)
	ZEND_ARG_INFO(0, a)
ZEND_END_ARG_INFO()

ZEPHIR_INIT_FUNCS(stub_oo_abstractclass_method_entry) {
PHP_ME(Stub_Oo_AbstractClass, testMethodDeclaration, arginfo_stub_oo_abstractclass_testmethoddeclaration, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testMethodDeclarationWithReturnType, arginfo_stub_oo_abstractclass_testmethoddeclarationwithreturntype, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testMethodDeclarationWithParameter, arginfo_stub_oo_abstractclass_testmethoddeclarationwithparameter, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testMethodDeclarationWithParameterAndReturnType, arginfo_stub_oo_abstractclass_testmethoddeclarationwithparameterandreturntype, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
PHP_ME(Stub_Oo_AbstractClass, testAbstractMethodDeclaration, arginfo_stub_oo_abstractclass_testabstractmethoddeclaration, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithReturnType, arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithreturntype, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithParameter, arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithparameter, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_ME(Stub_Oo_AbstractClass, testAbstractMethodDeclarationWithParameterAndReturnType, arginfo_stub_oo_abstractclass_testabstractmethoddeclarationwithparameterandreturntype, ZEND_ACC_ABSTRACT|ZEND_ACC_PUBLIC)
	PHP_FE_END
};
