X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=ion_arginfo.h;h=4d5bc27f3b19536cc562b090ded37897150ca88d;hb=cf2cebaf281d2398f1c97f1d00d392383a7dfb24;hp=d11e88a68eb1acbe638e6de09e93c698af22d059;hpb=5160cd44798ab39c50a19df6f849355c8425d20b;p=awesomized%2Fext-ion diff --git a/ion_arginfo.h b/ion_arginfo.h index d11e88a..4d5bc27 100644 --- a/ion_arginfo.h +++ b/ion_arginfo.h @@ -1,14 +1,14 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: 9972b27bc2f7f20e59aae26777e1a674f1606c11 */ + * Stub hash: 5dc8abb809cd14ed4c542ca5114bd4ceda42d70b */ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ion_serialize, 0, 1, IS_STRING, 0) ZEND_ARG_TYPE_INFO(0, data, IS_MIXED, 0) - ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, options, ion\\Writer\\Options, 0, "null") + ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, serializer, ion\\Serializer, 1, "null") ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ion_unserialize, 0, 1, IS_MIXED, 0) - ZEND_ARG_TYPE_INFO(0, serialized, IS_MIXED, 0) - ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, options, ion\\Reader\\Options, 0, "null") + ZEND_ARG_INFO(0, data) + ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, unserializer, ion\\Unserializer, 1, "null") ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Symbol_ImportLocation___construct, 0, 0, 2) @@ -16,8 +16,8 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Symbol_ImportLocation___construct, 0, 0 ZEND_ARG_TYPE_INFO(0, location, IS_LONG, 0) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Symbol___construct, 0, 0, 1) - ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0) +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Symbol___construct, 0, 0, 0) + ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, value, IS_STRING, 1, "null") ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, sid, IS_LONG, 0, "-1") ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, importLocation, ion\\Symbol\\ImportLocation, 1, "null") ZEND_END_ARG_INFO() @@ -26,6 +26,16 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Symbol_equals, 0, 1, _ ZEND_ARG_OBJ_INFO(0, symbol, ion\\Symbol, 0) ZEND_END_ARG_INFO() +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Symbol___toString, 0, 0, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_ion_Symbol_toString arginfo_class_ion_Symbol___toString + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_LOB___construct, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0) + ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, type, ion\\Type, 0, "ion\\Type::CLob") +ZEND_END_ARG_INFO() + ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Decimal_Context___construct, 0, 0, 0) ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, bits, IS_LONG, 0, "128") ZEND_END_ARG_INFO() @@ -42,22 +52,21 @@ ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Decimal_isInt, 0, 0, _IS_BOOL, 0) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Decimal___toString, 0, 0, IS_STRING, 0) -ZEND_END_ARG_INFO() +#define arginfo_class_ion_Decimal___toString arginfo_class_ion_Symbol___toString -#define arginfo_class_ion_Decimal_toString arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Decimal_toString arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Decimal_toInt, 0, 0, IS_LONG, 0) ZEND_END_ARG_INFO() ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Timestamp___construct, 0, 0, 1) - ZEND_ARG_TYPE_INFO(0, precision, IS_LONG, 0) - ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, format, IS_STRING, 0, "\"c\"") - ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, datetime, IS_STRING, 0, "\"now\"") + ZEND_ARG_OBJ_TYPE_MASK(0, precision, ion\\Timestamp\\Precision, MAY_BE_LONG, NULL) + ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, format, IS_STRING, 1, "null") + ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, datetime, IS_STRING, 1, "null") ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null") ZEND_END_ARG_INFO() -#define arginfo_class_ion_Timestamp___toString arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Timestamp___toString arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_ion_Reader_getType, 0, 0, ion\\Type, 0) ZEND_END_ARG_INFO() @@ -72,7 +81,7 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Reader_isInStruct arginfo_class_ion_Decimal_isInt -#define arginfo_class_ion_Reader_getFieldName arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_getFieldName arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_ion_Reader_getFieldNameSymbol, 0, 0, ion\\Symbol, 0) ZEND_END_ARG_INFO() @@ -110,14 +119,14 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Reader_readSymbol arginfo_class_ion_Reader_getFieldNameSymbol -#define arginfo_class_ion_Reader_readString arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_readString arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Reader_readStringPart, 0, 1, _IS_BOOL, 0) ZEND_ARG_INFO(1, string) ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "0x1000") ZEND_END_ARG_INFO() -#define arginfo_class_ion_Reader_readLob arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_readLob arginfo_class_ion_Symbol___toString #define arginfo_class_ion_Reader_readLobPart arginfo_class_ion_Reader_readStringPart @@ -177,7 +186,7 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Reader_Reader_isInStruct arginfo_class_ion_Decimal_isInt -#define arginfo_class_ion_Reader_Reader_getFieldName arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_Reader_getFieldName arginfo_class_ion_Symbol___toString #define arginfo_class_ion_Reader_Reader_getFieldNameSymbol arginfo_class_ion_Reader_getFieldNameSymbol @@ -205,11 +214,11 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Reader_Reader_readSymbol arginfo_class_ion_Reader_getFieldNameSymbol -#define arginfo_class_ion_Reader_Reader_readString arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_Reader_readString arginfo_class_ion_Symbol___toString #define arginfo_class_ion_Reader_Reader_readStringPart arginfo_class_ion_Reader_readStringPart -#define arginfo_class_ion_Reader_Reader_readLob arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_Reader_readLob arginfo_class_ion_Symbol___toString #define arginfo_class_ion_Reader_Reader_readLobPart arginfo_class_ion_Reader_readStringPart @@ -223,14 +232,14 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Reader_Reader_getValueLength arginfo_class_ion_Decimal_toInt -#define arginfo_class_ion_Reader_Buffer_getBuffer arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_Buffer_getBuffer arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Reader_Buffer_Reader___construct, 0, 0, 1) ZEND_ARG_TYPE_INFO(0, buffer, IS_STRING, 0) ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, options, ion\\Reader\\Options, 1, "null") ZEND_END_ARG_INFO() -#define arginfo_class_ion_Reader_Buffer_Reader_getBuffer arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Reader_Buffer_Reader_getBuffer arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Reader_Stream_getStream, 0, 0, 0) ZEND_END_ARG_INFO() @@ -391,14 +400,14 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Writer_Writer_writeAll arginfo_class_ion_Writer_writeOne -#define arginfo_class_ion_Writer_Buffer_getBuffer arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Writer_Buffer_getBuffer arginfo_class_ion_Symbol___toString ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Writer_Buffer_Writer___construct, 0, 0, 1) ZEND_ARG_TYPE_INFO(1, buffer, IS_STRING, 1) ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, options, ion\\Writer\\Options, 1, "null") ZEND_END_ARG_INFO() -#define arginfo_class_ion_Writer_Buffer_Writer_getBuffer arginfo_class_ion_Decimal___toString +#define arginfo_class_ion_Writer_Buffer_Writer_getBuffer arginfo_class_ion_Symbol___toString #define arginfo_class_ion_Writer_Stream_getStream arginfo_class_ion_Reader_Stream_getStream @@ -409,27 +418,33 @@ ZEND_END_ARG_INFO() #define arginfo_class_ion_Writer_Stream_Writer_getStream arginfo_class_ion_Reader_Stream_getStream -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_PHP_Serializer___construct, 0, 0, 1) - ZEND_ARG_OBJ_INFO(0, writer, ion\\Writer, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Serializer___invoke, 0, 1, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, data, IS_MIXED, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_Unserializer___invoke, 0, 1, IS_MIXED, 0) + ZEND_ARG_INFO(0, data) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Serializer_PHP___construct, 0, 0, 0) + ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, writerOptions, ion\\Writer\\Options, 1, "null") ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, callMagicSerialize, _IS_BOOL, 0, "true") ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, callCustomSerialize, IS_STRING, 1, "null") ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ion_PHP_Serializer___invoke, 0, 1, IS_VOID, 0) - ZEND_ARG_TYPE_INFO(0, data, IS_MIXED, 0) -ZEND_END_ARG_INFO() +#define arginfo_class_ion_Serializer_PHP___invoke arginfo_class_ion_Serializer___invoke -#define arginfo_class_ion_PHP_Serializer_serialize arginfo_class_ion_PHP_Serializer___invoke +#define arginfo_class_ion_Serializer_PHP_serialize arginfo_class_ion_Serializer___invoke -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_PHP_Unserializer___construct, 0, 0, 1) - ZEND_ARG_OBJ_INFO(0, reader, ion\\Reader, 0) +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ion_Unserializer_PHP___construct, 0, 0, 0) + ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, readerOptions, ion\\Reader\\Options, 1, "null") ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, callMagicUnserialize, _IS_BOOL, 0, "true") ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, callCustomUnserialize, IS_STRING, 1, "null") ZEND_END_ARG_INFO() -#define arginfo_class_ion_PHP_Unserializer___invoke arginfo_class_ion_Reader_Reader_key +#define arginfo_class_ion_Unserializer_PHP___invoke arginfo_class_ion_Unserializer___invoke -#define arginfo_class_ion_PHP_Unserializer_unserialize arginfo_class_ion_Reader_Reader_key +#define arginfo_class_ion_Unserializer_PHP_unserialize arginfo_class_ion_Unserializer___invoke ZEND_FUNCTION(ion_serialize); @@ -437,6 +452,8 @@ ZEND_FUNCTION(ion_unserialize); ZEND_METHOD(ion_Symbol_ImportLocation, __construct); ZEND_METHOD(ion_Symbol, __construct); ZEND_METHOD(ion_Symbol, equals); +ZEND_METHOD(ion_Symbol, __toString); +ZEND_METHOD(ion_LOB, __construct); ZEND_METHOD(ion_Decimal_Context, __construct); ZEND_METHOD(ion_Decimal, __construct); ZEND_METHOD(ion_Decimal, equals); @@ -515,12 +532,12 @@ ZEND_METHOD(ion_Writer_Buffer_Writer, __construct); ZEND_METHOD(ion_Writer_Buffer_Writer, getBuffer); ZEND_METHOD(ion_Writer_Stream_Writer, __construct); ZEND_METHOD(ion_Writer_Stream_Writer, getStream); -ZEND_METHOD(ion_PHP_Serializer, __construct); -ZEND_METHOD(ion_PHP_Serializer, __invoke); -ZEND_METHOD(ion_PHP_Serializer, serialize); -ZEND_METHOD(ion_PHP_Unserializer, __construct); -ZEND_METHOD(ion_PHP_Unserializer, __invoke); -ZEND_METHOD(ion_PHP_Unserializer, unserialize); +ZEND_METHOD(ion_Serializer_PHP, __construct); +ZEND_METHOD(ion_Serializer_PHP, __invoke); +ZEND_METHOD(ion_Serializer_PHP, serialize); +ZEND_METHOD(ion_Unserializer_PHP, __construct); +ZEND_METHOD(ion_Unserializer_PHP, __invoke); +ZEND_METHOD(ion_Unserializer_PHP, unserialize); static const zend_function_entry ext_functions[] = { @@ -559,6 +576,8 @@ static const zend_function_entry class_ion_Symbol_System_SID_methods[] = { static const zend_function_entry class_ion_Symbol_methods[] = { ZEND_ME(ion_Symbol, __construct, arginfo_class_ion_Symbol___construct, ZEND_ACC_PUBLIC) ZEND_ME(ion_Symbol, equals, arginfo_class_ion_Symbol_equals, ZEND_ACC_PUBLIC) + ZEND_ME(ion_Symbol, __toString, arginfo_class_ion_Symbol___toString, ZEND_ACC_PUBLIC) + ZEND_MALIAS(ion_Symbol, toString, __toString, arginfo_class_ion_Symbol_toString, ZEND_ACC_PUBLIC) ZEND_FE_END }; @@ -578,6 +597,12 @@ static const zend_function_entry class_ion_Collection_methods[] = { }; +static const zend_function_entry class_ion_LOB_methods[] = { + ZEND_ME(ion_LOB, __construct, arginfo_class_ion_LOB___construct, ZEND_ACC_PUBLIC) + ZEND_FE_END +}; + + static const zend_function_entry class_ion_Decimal_Context_methods[] = { ZEND_ME(ion_Decimal_Context, __construct, arginfo_class_ion_Decimal_Context___construct, ZEND_ACC_PUBLIC) ZEND_FE_END @@ -595,6 +620,11 @@ static const zend_function_entry class_ion_Decimal_methods[] = { }; +static const zend_function_entry class_ion_Timestamp_Precision_methods[] = { + ZEND_FE_END +}; + + static const zend_function_entry class_ion_Timestamp_methods[] = { ZEND_ME(ion_Timestamp, __construct, arginfo_class_ion_Timestamp___construct, ZEND_ACC_PUBLIC) ZEND_ME(ion_Timestamp, __toString, arginfo_class_ion_Timestamp___toString, ZEND_ACC_PUBLIC) @@ -799,18 +829,30 @@ static const zend_function_entry class_ion_Writer_Stream_Writer_methods[] = { }; -static const zend_function_entry class_ion_PHP_Serializer_methods[] = { - ZEND_ME(ion_PHP_Serializer, __construct, arginfo_class_ion_PHP_Serializer___construct, ZEND_ACC_PUBLIC) - ZEND_ME(ion_PHP_Serializer, __invoke, arginfo_class_ion_PHP_Serializer___invoke, ZEND_ACC_PUBLIC) - ZEND_ME(ion_PHP_Serializer, serialize, arginfo_class_ion_PHP_Serializer_serialize, ZEND_ACC_PROTECTED) +static const zend_function_entry class_ion_Serializer_methods[] = { + ZEND_ABSTRACT_ME_WITH_FLAGS(ion_Serializer, __invoke, arginfo_class_ion_Serializer___invoke, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT) ZEND_FE_END }; -static const zend_function_entry class_ion_PHP_Unserializer_methods[] = { - ZEND_ME(ion_PHP_Unserializer, __construct, arginfo_class_ion_PHP_Unserializer___construct, ZEND_ACC_PUBLIC) - ZEND_ME(ion_PHP_Unserializer, __invoke, arginfo_class_ion_PHP_Unserializer___invoke, ZEND_ACC_PUBLIC) - ZEND_ME(ion_PHP_Unserializer, unserialize, arginfo_class_ion_PHP_Unserializer_unserialize, ZEND_ACC_PROTECTED) +static const zend_function_entry class_ion_Unserializer_methods[] = { + ZEND_ABSTRACT_ME_WITH_FLAGS(ion_Unserializer, __invoke, arginfo_class_ion_Unserializer___invoke, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT) + ZEND_FE_END +}; + + +static const zend_function_entry class_ion_Serializer_PHP_methods[] = { + ZEND_ME(ion_Serializer_PHP, __construct, arginfo_class_ion_Serializer_PHP___construct, ZEND_ACC_PUBLIC) + ZEND_ME(ion_Serializer_PHP, __invoke, arginfo_class_ion_Serializer_PHP___invoke, ZEND_ACC_PUBLIC) + ZEND_ME(ion_Serializer_PHP, serialize, arginfo_class_ion_Serializer_PHP_serialize, ZEND_ACC_PROTECTED) + ZEND_FE_END +}; + + +static const zend_function_entry class_ion_Unserializer_PHP_methods[] = { + ZEND_ME(ion_Unserializer_PHP, __construct, arginfo_class_ion_Unserializer_PHP___construct, ZEND_ACC_PUBLIC) + ZEND_ME(ion_Unserializer_PHP, __invoke, arginfo_class_ion_Unserializer_PHP___invoke, ZEND_ACC_PUBLIC) + ZEND_ME(ion_Unserializer_PHP, unserialize, arginfo_class_ion_Unserializer_PHP_unserialize, ZEND_ACC_PROTECTED) ZEND_FE_END }; @@ -934,10 +976,10 @@ static zend_class_entry *register_class_ion_Annotation(void) ZVAL_STR(&enum_case_ENUM_value, enum_case_ENUM_value_str); zend_enum_add_case_cstr(class_entry, "ENUM", &enum_case_ENUM_value); - zval enum_case_FIELD_NAME_INT_value; - zend_string *enum_case_FIELD_NAME_INT_value_str = zend_string_init("i", sizeof("i") - 1, 1); - ZVAL_STR(&enum_case_FIELD_NAME_INT_value, enum_case_FIELD_NAME_INT_value_str); - zend_enum_add_case_cstr(class_entry, "FIELD_NAME_INT", &enum_case_FIELD_NAME_INT_value); + zval enum_case_PROPERTY_value; + zend_string *enum_case_PROPERTY_value_str = zend_string_init("p", sizeof("p") - 1, 1); + ZVAL_STR(&enum_case_PROPERTY_value, enum_case_PROPERTY_value_str); + zend_enum_add_case_cstr(class_entry, "PROPERTY", &enum_case_PROPERTY_value); return class_entry; } @@ -1069,7 +1111,7 @@ static zend_class_entry *register_class_ion_Symbol(void) zval property_value_default_value; ZVAL_UNDEF(&property_value_default_value); zend_string *property_value_name = zend_string_init("value", sizeof("value") - 1, 1); - zend_declare_typed_property(class_entry, property_value_name, &property_value_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_declare_typed_property(class_entry, property_value_name, &property_value_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); zend_string_release(property_value_name); zval property_sid_default_value; @@ -1118,6 +1160,29 @@ static zend_class_entry *register_class_ion_Collection(void) return class_entry; } +static zend_class_entry *register_class_ion_LOB(void) +{ + zend_class_entry ce, *class_entry; + + INIT_NS_CLASS_ENTRY(ce, "ion", "LOB", class_ion_LOB_methods); + class_entry = zend_register_internal_class_ex(&ce, NULL); + + zval property_value_default_value; + ZVAL_UNDEF(&property_value_default_value); + zend_string *property_value_name = zend_string_init("value", sizeof("value") - 1, 1); + zend_declare_typed_property(class_entry, property_value_name, &property_value_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_value_name); + + zend_string *property_type_class_ion_Type = zend_string_init("ion\\Type", sizeof("ion\\Type")-1, 1); + zval property_type_default_value; + ZVAL_UNDEF(&property_type_default_value); + zend_string *property_type_name = zend_string_init("type", sizeof("type") - 1, 1); + zend_declare_typed_property(class_entry, property_type_name, &property_type_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_type_class_ion_Type, 0, 0)); + zend_string_release(property_type_name); + + return class_entry; +} + static zend_class_entry *register_class_ion_Decimal_Context(void) { zend_class_entry ce, *class_entry; @@ -1157,6 +1222,37 @@ static zend_class_entry *register_class_ion_Decimal(void) return class_entry; } +static zend_class_entry *register_class_ion_Timestamp_Precision(void) +{ + zend_class_entry *class_entry = zend_register_internal_enum("ion\\Timestamp\\Precision", IS_LONG, class_ion_Timestamp_Precision_methods); + + zval enum_case_Year_value; + ZVAL_LONG(&enum_case_Year_value, 1); + zend_enum_add_case_cstr(class_entry, "Year", &enum_case_Year_value); + + zval enum_case_Month_value; + ZVAL_LONG(&enum_case_Month_value, 3); + zend_enum_add_case_cstr(class_entry, "Month", &enum_case_Month_value); + + zval enum_case_Day_value; + ZVAL_LONG(&enum_case_Day_value, 7); + zend_enum_add_case_cstr(class_entry, "Day", &enum_case_Day_value); + + zval enum_case_Min_value; + ZVAL_LONG(&enum_case_Min_value, 23); + zend_enum_add_case_cstr(class_entry, "Min", &enum_case_Min_value); + + zval enum_case_Sec_value; + ZVAL_LONG(&enum_case_Sec_value, 55); + zend_enum_add_case_cstr(class_entry, "Sec", &enum_case_Sec_value); + + zval enum_case_Frac_value; + ZVAL_LONG(&enum_case_Frac_value, 119); + zend_enum_add_case_cstr(class_entry, "Frac", &enum_case_Frac_value); + + return class_entry; +} + static zend_class_entry *register_class_ion_Timestamp(zend_class_entry *class_entry_DateTime) { zend_class_entry ce, *class_entry; @@ -1512,19 +1608,40 @@ static zend_class_entry *register_class_ion_Writer_Stream_Writer(zend_class_entr return class_entry; } -static zend_class_entry *register_class_ion_PHP_Serializer(void) +static zend_class_entry *register_class_ion_Serializer(void) +{ + zend_class_entry ce, *class_entry; + + INIT_NS_CLASS_ENTRY(ce, "ion", "Serializer", class_ion_Serializer_methods); + class_entry = zend_register_internal_interface(&ce); + + return class_entry; +} + +static zend_class_entry *register_class_ion_Unserializer(void) { zend_class_entry ce, *class_entry; - INIT_NS_CLASS_ENTRY(ce, "ion\\PHP", "Serializer", class_ion_PHP_Serializer_methods); + INIT_NS_CLASS_ENTRY(ce, "ion", "Unserializer", class_ion_Unserializer_methods); + class_entry = zend_register_internal_interface(&ce); + + return class_entry; +} + +static zend_class_entry *register_class_ion_Serializer_PHP(zend_class_entry *class_entry_ion_Serializer) +{ + zend_class_entry ce, *class_entry; + + INIT_NS_CLASS_ENTRY(ce, "ion\\Serializer", "PHP", class_ion_Serializer_PHP_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); + zend_class_implements(class_entry, 1, class_entry_ion_Serializer); - zend_string *property_writer_class_ion_Writer = zend_string_init("ion\\Writer", sizeof("ion\\Writer")-1, 1); - zval property_writer_default_value; - ZVAL_UNDEF(&property_writer_default_value); - zend_string *property_writer_name = zend_string_init("writer", sizeof("writer") - 1, 1); - zend_declare_typed_property(class_entry, property_writer_name, &property_writer_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_writer_class_ion_Writer, 0, 0)); - zend_string_release(property_writer_name); + zend_string *property_writerOptions_class_ion_Writer_Options = zend_string_init("ion\\Writer\\Options", sizeof("ion\\Writer\\Options")-1, 1); + zval property_writerOptions_default_value; + ZVAL_UNDEF(&property_writerOptions_default_value); + zend_string *property_writerOptions_name = zend_string_init("writerOptions", sizeof("writerOptions") - 1, 1); + zend_declare_typed_property(class_entry, property_writerOptions_name, &property_writerOptions_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_writerOptions_class_ion_Writer_Options, 0, MAY_BE_NULL)); + zend_string_release(property_writerOptions_name); zval property_callMagicSerialize_default_value; ZVAL_UNDEF(&property_callMagicSerialize_default_value); @@ -1541,19 +1658,20 @@ static zend_class_entry *register_class_ion_PHP_Serializer(void) return class_entry; } -static zend_class_entry *register_class_ion_PHP_Unserializer(void) +static zend_class_entry *register_class_ion_Unserializer_PHP(zend_class_entry *class_entry_ion_Unserializer) { zend_class_entry ce, *class_entry; - INIT_NS_CLASS_ENTRY(ce, "ion\\PHP", "Unserializer", class_ion_PHP_Unserializer_methods); + INIT_NS_CLASS_ENTRY(ce, "ion\\Unserializer", "PHP", class_ion_Unserializer_PHP_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); - - zend_string *property_reader_class_ion_Reader = zend_string_init("ion\\Reader", sizeof("ion\\Reader")-1, 1); - zval property_reader_default_value; - ZVAL_UNDEF(&property_reader_default_value); - zend_string *property_reader_name = zend_string_init("reader", sizeof("reader") - 1, 1); - zend_declare_typed_property(class_entry, property_reader_name, &property_reader_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_reader_class_ion_Reader, 0, 0)); - zend_string_release(property_reader_name); + zend_class_implements(class_entry, 1, class_entry_ion_Unserializer); + + zend_string *property_readerOptions_class_ion_Reader_Options = zend_string_init("ion\\Reader\\Options", sizeof("ion\\Reader\\Options")-1, 1); + zval property_readerOptions_default_value; + ZVAL_UNDEF(&property_readerOptions_default_value); + zend_string *property_readerOptions_name = zend_string_init("readerOptions", sizeof("readerOptions") - 1, 1); + zend_declare_typed_property(class_entry, property_readerOptions_name, &property_readerOptions_default_value, ZEND_ACC_PUBLIC|ZEND_ACC_READONLY, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_readerOptions_class_ion_Reader_Options, 0, MAY_BE_NULL)); + zend_string_release(property_readerOptions_name); zval property_callMagicUnserialize_default_value; ZVAL_UNDEF(&property_callMagicUnserialize_default_value);