@@ -65,9 +65,11 @@ static inline php_phongo_writeresult_t* php_writeresult_fetch_object(zend_object
65
65
static inline php_phongo_binary_t * php_binary_fetch_object (zend_object * obj ) {
66
66
return (php_phongo_binary_t * )((char * )obj - XtOffsetOf (php_phongo_binary_t , std ));
67
67
}
68
+ #ifdef BSON_EXPERIMENTAL_FEATURES
68
69
static inline php_phongo_decimal128_t * php_decimal128_fetch_object (zend_object * obj ) {
69
70
return (php_phongo_decimal128_t * )((char * )obj - XtOffsetOf (php_phongo_decimal128_t , std ));
70
71
}
72
+ #endif
71
73
static inline php_phongo_javascript_t * php_javascript_fetch_object (zend_object * obj ) {
72
74
return (php_phongo_javascript_t * )((char * )obj - XtOffsetOf (php_phongo_javascript_t , std ));
73
75
}
@@ -104,7 +106,9 @@ static inline php_phongo_utcdatetime_t* php_utcdatetime_fetch_object(zend_object
104
106
# define Z_WRITEERROR_OBJ_P (zv ) (php_writeerror_fetch_object(Z_OBJ_P(zv)))
105
107
# define Z_WRITERESULT_OBJ_P (zv ) (php_writeresult_fetch_object(Z_OBJ_P(zv)))
106
108
# define Z_BINARY_OBJ_P (zv ) (php_binary_fetch_object(Z_OBJ_P(zv)))
109
+ #ifdef BSON_EXPERIMENTAL_FEATURES
107
110
# define Z_DECIMAL128_OBJ_P (zv ) (php_decimal128_fetch_object(Z_OBJ_P(zv)))
111
+ #endif
108
112
# define Z_JAVASCRIPT_OBJ_P (zv ) (php_javascript_fetch_object(Z_OBJ_P(zv)))
109
113
# define Z_MAXKEY_OBJ_P (zv ) (php_maxkey_fetch_object(Z_OBJ_P(zv)))
110
114
# define Z_MINKEY_OBJ_P (zv ) (php_minkey_fetch_object(Z_OBJ_P(zv)))
@@ -127,7 +131,9 @@ static inline php_phongo_utcdatetime_t* php_utcdatetime_fetch_object(zend_object
127
131
# define Z_OBJ_WRITEERROR (zo ) (php_writeerror_fetch_object(zo))
128
132
# define Z_OBJ_WRITERESULT (zo ) (php_writeresult_fetch_object(zo))
129
133
# define Z_OBJ_BINARY (zo ) (php_binary_fetch_object(zo))
134
+ #ifdef BSON_EXPERIMENTAL_FEATURES
130
135
# define Z_OBJ_DECIMAL128 (zo ) (php_decimal128_fetch_object(zo))
136
+ #endif
131
137
# define Z_OBJ_JAVASCRIPT (zo ) (php_javascript_fetch_object(zo))
132
138
# define Z_OBJ_MAXKEY (zo ) (php_maxkey_fetch_object(zo))
133
139
# define Z_OBJ_MINKEY (zo ) (php_minkey_fetch_object(zo))
@@ -152,7 +158,9 @@ static inline php_phongo_utcdatetime_t* php_utcdatetime_fetch_object(zend_object
152
158
# define Z_WRITEERROR_OBJ_P (zv ) ((php_phongo_writeerror_t *)zend_object_store_get_object(zv TSRMLS_CC))
153
159
# define Z_WRITERESULT_OBJ_P (zv ) ((php_phongo_writeresult_t *)zend_object_store_get_object(zv TSRMLS_CC))
154
160
# define Z_BINARY_OBJ_P (zv ) ((php_phongo_binary_t *)zend_object_store_get_object(zv TSRMLS_CC))
161
+ #ifdef BSON_EXPERIMENTAL_FEATURES
155
162
# define Z_DECIMAL128_OBJ_P (zv ) ((php_phongo_decimal128_t *)zend_object_store_get_object(zv TSRMLS_CC))
163
+ #endif
156
164
# define Z_JAVASCRIPT_OBJ_P (zv ) ((php_phongo_javascript_t *)zend_object_store_get_object(zv TSRMLS_CC))
157
165
# define Z_MAXKEY_OBJ_P (zv ) ((php_phongo_maxkey_t *)zend_object_store_get_object(zv TSRMLS_CC))
158
166
# define Z_MINKEY_OBJ_P (zv ) ((php_phongo_minkey_t *)zend_object_store_get_object(zv TSRMLS_CC))
@@ -175,7 +183,9 @@ static inline php_phongo_utcdatetime_t* php_utcdatetime_fetch_object(zend_object
175
183
# define Z_OBJ_WRITEERROR (zo ) ((php_phongo_writeerror_t *)zo)
176
184
# define Z_OBJ_WRITERESULT (zo ) ((php_phongo_writeresult_t *)zo)
177
185
# define Z_OBJ_BINARY (zo ) ((php_phongo_binary_t *)zo)
186
+ #ifdef BSON_EXPERIMENTAL_FEATURES
178
187
# define Z_OBJ_DECIMAL128 (zo ) ((php_phongo_decimal128_t *)zo)
188
+ #endif
179
189
# define Z_OBJ_JAVASCRIPT (zo ) ((php_phongo_javascript_t *)zo)
180
190
# define Z_OBJ_MAXKEY (zo ) ((php_phongo_maxkey_t *)zo)
181
191
# define Z_OBJ_MINKEY (zo ) ((php_phongo_minkey_t *)zo)
@@ -225,7 +235,9 @@ extern PHONGO_API zend_class_entry *php_phongo_persistable_ce;
225
235
extern PHONGO_API zend_class_entry * php_phongo_unserializable_ce ;
226
236
extern PHONGO_API zend_class_entry * php_phongo_serializable_ce ;
227
237
extern PHONGO_API zend_class_entry * php_phongo_binary_ce ;
238
+ #ifdef BSON_EXPERIMENTAL_FEATURES
228
239
extern PHONGO_API zend_class_entry * php_phongo_decimal128_ce ;
240
+ #endif
229
241
extern PHONGO_API zend_class_entry * php_phongo_javascript_ce ;
230
242
extern PHONGO_API zend_class_entry * php_phongo_maxkey_ce ;
231
243
extern PHONGO_API zend_class_entry * php_phongo_minkey_ce ;
@@ -272,7 +284,9 @@ PHP_MINIT_FUNCTION(Unserializable);
272
284
PHP_MINIT_FUNCTION (Serializable );
273
285
PHP_MINIT_FUNCTION (Persistable );
274
286
PHP_MINIT_FUNCTION (Binary );
287
+ #ifdef BSON_EXPERIMENTAL_FEATURES
275
288
PHP_MINIT_FUNCTION (Decimal128 );
289
+ #endif
276
290
PHP_MINIT_FUNCTION (Javascript );
277
291
PHP_MINIT_FUNCTION (MaxKey );
278
292
PHP_MINIT_FUNCTION (MinKey );
0 commit comments