@@ -68,8 +68,8 @@ int json_yydebug = 1;
68
68
%code {
69
69
static int php_json_yylex (union YYSTYPE *value, php_json_parser *parser);
70
70
static void php_json_yyerror (php_json_parser *parser, char const *msg);
71
- static int php_json_parser_array_create (php_json_parser *parser, zval *array);
72
- static int php_json_parser_object_create (php_json_parser *parser, zval *array);
71
+ static void php_json_parser_array_create (php_json_parser *parser, zval *array);
72
+ static void php_json_parser_object_create (php_json_parser *parser, zval *array);
73
73
74
74
}
75
75
@@ -89,17 +89,11 @@ object:
89
89
' {'
90
90
{
91
91
PHP_JSON_DEPTH_INC;
92
- if (parser->methods.object_start && FAILURE == parser->methods.object_start(parser)) {
93
- YYERROR ;
94
- }
95
92
}
96
93
members object_end
97
94
{
98
95
ZVAL_COPY_VALUE (&$$, &$3 );
99
96
PHP_JSON_DEPTH_DEC;
100
- if (parser->methods.object_end && FAILURE == parser->methods.object_end(parser, &$$ )) {
101
- YYERROR ;
102
- }
103
97
}
104
98
;
105
99
@@ -145,17 +139,11 @@ array:
145
139
' ['
146
140
{
147
141
PHP_JSON_DEPTH_INC;
148
- if (parser->methods.array_start && FAILURE == parser->methods.array_start(parser)) {
149
- YYERROR ;
150
- }
151
142
}
152
143
elements array_end
153
144
{
154
145
ZVAL_COPY_VALUE (&$$, &$3 );
155
146
PHP_JSON_DEPTH_DEC;
156
- if (parser->methods.array_end && FAILURE == parser->methods.array_end(parser, &$$ )) {
157
- YYERROR ;
158
- }
159
147
}
160
148
;
161
149
@@ -212,29 +200,26 @@ value:
212
200
213
201
%% /* Functions */
214
202
215
- static int php_json_parser_array_create (php_json_parser *parser, zval *array)
203
+ static void php_json_parser_array_create (php_json_parser *parser, zval *array)
216
204
{
217
205
array_init (array);
218
- return SUCCESS;
219
206
}
220
207
221
- static int php_json_parser_array_append (php_json_parser *parser, zval *array, zval *zvalue)
208
+ static void php_json_parser_array_append (php_json_parser *parser, zval *array, zval *zvalue)
222
209
{
223
210
zend_hash_next_index_insert (Z_ARRVAL_P (array), zvalue);
224
- return SUCCESS;
225
211
}
226
212
227
- static int php_json_parser_object_create (php_json_parser *parser, zval *object)
213
+ static void php_json_parser_object_create (php_json_parser *parser, zval *object)
228
214
{
229
215
if (parser->scanner .options & PHP_JSON_OBJECT_AS_ARRAY) {
230
216
array_init (object);
231
217
} else {
232
218
object_init (object);
233
219
}
234
- return SUCCESS;
235
220
}
236
221
237
- static int php_json_parser_object_update (php_json_parser *parser, zval *object, zend_string *key, zval *zvalue)
222
+ static zend_result php_json_parser_object_update (php_json_parser *parser, zval *object, zend_string *key, zval *zvalue)
238
223
{
239
224
/* if JSON_OBJECT_AS_ARRAY is set */
240
225
if (Z_TYPE_P (object) == IS_ARRAY) {
@@ -255,24 +240,21 @@ static int php_json_parser_object_update(php_json_parser *parser, zval *object,
255
240
return SUCCESS;
256
241
}
257
242
258
- static int php_json_parser_array_create_validate (php_json_parser *parser, zval *array)
243
+ static void php_json_parser_array_create_validate (php_json_parser *parser, zval *array)
259
244
{
260
245
ZVAL_NULL (array);
261
- return SUCCESS;
262
246
}
263
247
264
- static int php_json_parser_array_append_validate (php_json_parser *parser, zval *array, zval *zvalue)
248
+ static void php_json_parser_array_append_validate (php_json_parser *parser, zval *array, zval *zvalue)
265
249
{
266
- return SUCCESS;
267
250
}
268
251
269
- static int php_json_parser_object_create_validate (php_json_parser *parser, zval *object)
252
+ static void php_json_parser_object_create_validate (php_json_parser *parser, zval *object)
270
253
{
271
254
ZVAL_NULL (object);
272
- return SUCCESS;
273
255
}
274
256
275
- static int php_json_parser_object_update_validate (php_json_parser *parser, zval *object, zend_string *key, zval *zvalue)
257
+ static zend_result php_json_parser_object_update_validate (php_json_parser *parser, zval *object, zend_string *key, zval *zvalue)
276
258
{
277
259
return SUCCESS;
278
260
}
@@ -312,24 +294,16 @@ static const php_json_parser_methods default_parser_methods =
312
294
{
313
295
php_json_parser_array_create,
314
296
php_json_parser_array_append,
315
- NULL ,
316
- NULL ,
317
297
php_json_parser_object_create,
318
298
php_json_parser_object_update,
319
- NULL ,
320
- NULL ,
321
299
};
322
300
323
301
static const php_json_parser_methods validate_parser_methods =
324
302
{
325
303
php_json_parser_array_create_validate,
326
304
php_json_parser_array_append_validate,
327
- NULL ,
328
- NULL ,
329
305
php_json_parser_object_create_validate,
330
306
php_json_parser_object_update_validate,
331
- NULL ,
332
- NULL ,
333
307
};
334
308
335
309
PHP_JSON_API void php_json_parser_init_ex (php_json_parser *parser,
0 commit comments