7
7
#include "erl_nif.h"
8
8
#include "jsonx_str.h"
9
9
10
- #include <stdio.h>
11
- #define LOG (...) fprintf(stderr, __VA_ARGS__ )
12
-
13
10
typedef struct {
14
11
ERL_NIF_TERM am_true ;
15
12
ERL_NIF_TERM am_false ;
@@ -203,7 +200,6 @@ parse_null(State* st){
203
200
204
201
static inline ERL_NIF_TERM
205
202
parse_key (State * st ){
206
- //LOG("...parse key: %s\r\n", st->cur);
207
203
ERL_NIF_TERM key ;
208
204
switch (look_ah (st )){
209
205
case '\"' :
@@ -213,7 +209,6 @@ parse_key(State *st){
213
209
if (look_ah (st ) == ':' ){
214
210
st -> m_state = KEY_COMPLETTE ;
215
211
st -> cur ++ ;
216
- //LOG("...parse key: %s\r\n", st->cur);
217
212
return enif_make_tuple2 (st -> env , st -> priv -> am_map_key , key );
218
213
}
219
214
case '\0' :
@@ -255,11 +250,8 @@ ERL_NIF_TERM
255
250
get_event_nif (ErlNifEnv * env , int argc , const ERL_NIF_TERM argv []){
256
251
State * st ;
257
252
assert (enif_get_resource (env , argv [0 ], stream_RSTYPE , (void * * )& st ));
258
- //LOG("=== top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
259
- //LOG("*top %c\r\n", *st->top);
260
253
switch (* st -> top ){
261
254
case '[' :
262
- //LOG("case [ : top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
263
255
if (st -> m_state == COMPLETTE ){
264
256
switch (look_ah (st )){
265
257
case ',' : st -> m_state = COMMA ; st -> cur ++ ; return parse0 (st );
@@ -277,21 +269,17 @@ get_event_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
277
269
}
278
270
break ;
279
271
case '{' :
280
- //LOG(" case { : top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
281
272
if (st -> m_state == COMPLETTE ){
282
- //LOG(" COMPLETTE case { : top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
283
273
switch (look_ah (st )){
284
274
case ',' : st -> m_state = COMMA ; st -> cur ++ ; return parse_key (st );
285
275
case '}' : st -> m_state = COMPLETTE ; st -> cur ++ ; st -> top -- ; return st -> priv -> am_end_map ;
286
276
case '\0' : st -> cur ++ ; return st -> priv -> am_parse_buf ;
287
277
}
288
278
}else if (st -> m_state == KEY_COMPLETTE ){
289
- //LOG(" KEY_COMPLETTE case { : top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
290
279
return parse0 (st );
291
280
}else if (st -> m_state == COMMA ){
292
281
return parse_key (st );
293
282
}else if (st -> m_state == START ){
294
- //LOG(" START_MAP case { : top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
295
283
switch (look_ah (st )){
296
284
case '\0' : st -> cur ++ ; return st -> priv -> am_parse_buf ;
297
285
case '}' : st -> m_state = COMPLETTE ; st -> cur ++ ; st -> top -- ; return st -> priv -> am_end_map ;
@@ -300,7 +288,6 @@ get_event_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
300
288
}
301
289
break ;
302
290
case '\0' :
303
- //LOG("case 0: top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
304
291
if (st -> m_state == COMPLETTE ){
305
292
ERL_NIF_TERM rest ;
306
293
look_ah (st );
@@ -314,9 +301,7 @@ get_event_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
314
301
}
315
302
break ;
316
303
case 'e' :
317
- //LOG(" case e: top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
318
304
default :
319
- //LOG("default: top: %p,top: '%s', cur: '%s' m_state: == %d\r\n", st->top, st->top, st->cur, st->m_state);
320
305
break ;
321
306
}
322
307
return make_error (st , st -> priv -> am_esyntax );
@@ -333,7 +318,6 @@ update_decoder_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
333
318
size_t stack_size = (st -> top + 1 - st -> bin .data );
334
319
335
320
size_t free = st -> bin .size - stack_size - sizeof (ERL_NIF_TERM );
336
- ////LOG("--- update_decoder_nif: free: %d, input.size: %d, stack_size:%d cur: %s\r\n", free, input.size, stack_size, st->cur);
337
321
if (input .size > free ){
338
322
enif_realloc_binary (& st -> bin , input .size + stack_size + sizeof (ERL_NIF_TERM ));
339
323
st -> top = st -> bin .data + stack_size - 1 ;
@@ -345,7 +329,6 @@ update_decoder_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
345
329
memcpy (st -> cur , input .data , input .size );
346
330
* ((ERL_NIF_TERM * )(st -> cur + input .size )) = 0U ;
347
331
}
348
- ////LOG("+++ update_decoder_nif: free: %d, input.size: %d, stack_size:%d cur: %s\r\n", free, input.size, stack_size, st->cur);
349
332
return st -> priv -> am_ok ;
350
333
}
351
334
@@ -371,9 +354,6 @@ make_stream_resource_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){
371
354
ERL_NIF_TERM ret = enif_make_resource (env , (void * )st );
372
355
enif_release_resource (st );
373
356
return ret ;
374
- // error:
375
- // enif_release_resource(dec_entry);
376
- // return enif_make_badarg(env);
377
357
}
378
358
379
359
static ErlNifFunc
0 commit comments