@@ -1435,11 +1435,10 @@
1435 1435 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#if defined(__cplusplus)
1436 1436 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
extern "C" {
1437 1437 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#endif
1438 1438 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1439 1439 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1440 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
1441 1440 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/**
1442 1441 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
This type holds the "vtbl" for type-specific operations when
1443 1442 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
working with cson_value objects.
1444 1443 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1445 1444 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
All cson_values of a given logical type share a pointer to a single
@@ -1686,12 +1685,12 @@
1686 1685 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: 0;
1687 1686 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1688 1687 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1689 1688 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * cson_rc_string(int rc)
1690 1689 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1691 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(0 == rc) return "OK";
1692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #define CHECK(N) else if(cson_rc.N == rc ) return #N
1690 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch(rc){
1691 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define CHECK(N) case CSON_RC_##N: return #N;
1693 1692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(OK);
1694 1693 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(ArgError);
1695 1694 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(RangeError);
1696 1695 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(TypeError);
1697 1696 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(IOError);
@@ -1708,11 +1707,12 @@
1708 1707 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(Parse_INVALID_NUMBER);
1709 1708 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(Parse_NESTING_DEPTH_REACHED);
1710 1709 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(Parse_UNBALANCED_COLLECTION);
1711 1710 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(Parse_EXPECTED_KEY);
1712 1711 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
CHECK(Parse_EXPECTED_COLON);
1713 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else return "UnknownError";
1712 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default: return "UnknownError";
1713 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
1714 1714 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef CHECK
1715 1715 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1716 1716 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1717 1717 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/**
1718 1718 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
If CSON_LOG_ALLOC is true then the cson_malloc/realloc/free() routines
@@ -1854,11 +1854,11 @@
1854 1854 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1855 1855 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1856 1856 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#if 0
1857 1857 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_refcount_set( cson_value * cv, unsigned short rc )
1858 1858 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1859 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( NULL == cv ) return cson_rc.ArgError;
1859 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( NULL == cv ) return CSON_RC_ArgError;
1860 1860 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
1861 1861 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1862 1862 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cv->refcount = rc;
1863 1863 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
1864 1864 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -1865,14 +1865,14 @@
1865 1865 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1866 1866 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#endif
1867 1867 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1868 1868 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_add_reference( cson_value * cv )
1869 1869 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1870 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( NULL == cv ) return cson_rc.ArgError;
1870 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( NULL == cv ) return CSON_RC_ArgError;
1871 1871 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( (cv->refcount+1) < cv->refcount )
1872 1872 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1873 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.RangeError;
1873 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_RangeError;
1874 1874 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1875 1875 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
1876 1876 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
1877 1877 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_refcount_incr( cv );
1878 1878 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
@@ -2335,11 +2335,11 @@
2335 2335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
val->refcount = rc;
2336 2336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2337 2337 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2338 2338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2339 2339 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- static cson_value * cson_value_array_alloc()
2340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static cson_value * cson_value_array_alloc(void)
2341 2341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2342 2342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * v = cson_value_new(CSON_TYPE_ARRAY,0);
2343 2343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( NULL != v )
2344 2344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2345 2345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_array * ar = CSON_ARRAY(v);
@@ -2347,11 +2347,11 @@
2347 2347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*ar = cson_array_empty;
2348 2348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2349 2349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return v;
2350 2350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2351 2351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- static cson_value * cson_value_object_alloc()
2352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static cson_value * cson_value_object_alloc(void)
2353 2353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2354 2354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * v = cson_value_new(CSON_TYPE_OBJECT,0);
2355 2355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( NULL != v )
2356 2356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2357 2357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_object * obj = CSON_OBJ(v);
@@ -2359,28 +2359,28 @@
2359 2359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*obj = cson_object_empty;
2360 2360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2361 2361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return v;
2362 2362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2363 2363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_value * cson_value_new_object()
2364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * cson_value_new_object(void)
2365 2365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2366 2366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_value_object_alloc();
2367 2367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2368 2368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_object * cson_new_object()
2369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_object * cson_new_object(void)
2370 2370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2371 2371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2372 2372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_value_get_object( cson_value_new_object() );
2373 2373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2374 2374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_value * cson_value_new_array()
2375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * cson_value_new_array(void)
2376 2376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2377 2377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_value_array_alloc();
2378 2378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2379 2379 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2380 2380 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_array * cson_new_array()
2381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_array * cson_new_array(void)
2382 2382 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2383 2383 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_value_get_array( cson_value_new_array() );
2384 2384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2385 2385 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2386 2386 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/**
@@ -2502,11 +2502,11 @@
2502 2502 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
2503 2503 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
enum { BufSize = 1024 * 4 };
2504 2504 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char rbuf[BufSize];
2505 2505 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
size_t total = 0;
2506 2506 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int rlen = 0;
2507 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! dest || ! src ) return cson_rc.ArgError;
2507 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! dest || ! src ) return CSON_RC_ArgError;
2508 2508 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
dest->used = 0;
2509 2509 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
while(1)
2510 2510 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2511 2511 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rlen = BufSize;
2512 2512 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = src( state, rbuf, &rlen );
@@ -2530,16 +2530,16 @@
2530 2530 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2531 2531 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2532 2532 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_data_source_FILE( void * state, void * dest, unsigned int * n )
2533 2533 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2534 2534 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FILE * f = (FILE*) state;
2535 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! state || ! n || !dest ) return cson_rc.ArgError;
2536 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !*n ) return cson_rc.RangeError;
2535 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! state || ! n || !dest ) return CSON_RC_ArgError;
2536 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !*n ) return CSON_RC_RangeError;
2537 2537 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*n = (unsigned int)fread( dest, 1, *n, f );
2538 2538 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !*n )
2539 2539 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2540 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return feof(f) ? 0 : cson_rc.IOError;
2540 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return feof(f) ? 0 : CSON_RC_IOError;
2541 2541 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2542 2542 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2543 2543 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2544 2544 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2545 2545 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_parse_FILE( cson_value ** tgt, FILE * src,
@@ -2553,11 +2553,11 @@
2553 2553 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2554 2554 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/**
2555 2555 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FIXME: move the to-bool operation into cson_value_api, like we
2556 2556 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
do in the C++ API.
2557 2557 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
2558 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val || !val->api ) return cson_rc.ArgError;
2558 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val || !val->api ) return CSON_RC_ArgError;
2559 2559 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2560 2560 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2561 2561 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
2562 2562 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char b = 0;
2563 2563 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch( val->api->typeID )
@@ -2588,11 +2588,11 @@
2588 2588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value_fetch_double( val, &d );
2589 2589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
b = (0.0==d) ? 0 : 1;
2590 2590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
2591 2591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2592 2592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
2593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.TypeError;
2593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_TypeError;
2594 2594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
2595 2595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2596 2596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( v ) *v = b;
2597 2597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
2598 2598 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2605,11 +2605,11 @@
2605 2605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return i;
2606 2606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2607 2607 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2608 2608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_fetch_integer( cson_value const * val, cson_int_t * v )
2609 2609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val || !val->api ) return cson_rc.ArgError;
2610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val || !val->api ) return CSON_RC_ArgError;
2611 2611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2612 2612 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2613 2613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_int_t i = 0;
2614 2614 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
2615 2615 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch(val->api->typeID)
@@ -2641,11 +2641,11 @@
2641 2641 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2642 2642 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_STRING:
2643 2643 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_ARRAY:
2644 2644 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_OBJECT:
2645 2645 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
2646 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.TypeError;
2646 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_TypeError;
2647 2647 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
2648 2648 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2649 2649 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!rc && v) *v = i;
2650 2650 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
2651 2651 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2658,11 +2658,11 @@
2658 2658 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return i;
2659 2659 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2660 2660 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2661 2661 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_fetch_double( cson_value const * val, cson_double_t * v )
2662 2662 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2663 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val || !val->api ) return cson_rc.ArgError;
2663 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val || !val->api ) return CSON_RC_ArgError;
2664 2664 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2665 2665 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2666 2666 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_double_t d = 0.0;
2667 2667 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
2668 2668 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch(val->api->typeID)
@@ -2687,11 +2687,11 @@
2687 2687 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_double_t const* dv = CSON_DBL(val);
2688 2688 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
d = dv ? *dv : 0.0;
2689 2689 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
2690 2690 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2691 2691 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
2692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.TypeError;
2692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_TypeError;
2693 2693 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
2694 2694 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2695 2695 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(v) *v = d;
2696 2696 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
2697 2697 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2704,12 +2704,12 @@
2704 2704 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return i;
2705 2705 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2706 2706 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2707 2707 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_fetch_string( cson_value const * val, cson_string ** dest )
2708 2708 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2709 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val || ! dest ) return cson_rc.ArgError;
2710 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( ! cson_value_is_string(val) ) return cson_rc.TypeError;
2709 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val || ! dest ) return CSON_RC_ArgError;
2710 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ! cson_value_is_string(val) ) return CSON_RC_TypeError;
2711 2711 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2712 2712 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2713 2713 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( dest ) *dest = CSON_STR(val);
2714 2714 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2715 2715 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2727,12 +2727,12 @@
2727 2727 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_string_cstr( cson_value_get_string(val) );
2728 2728 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2729 2729 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2730 2730 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_fetch_object( cson_value const * val, cson_object ** obj )
2731 2731 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2732 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val ) return cson_rc.ArgError;
2733 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( ! cson_value_is_object(val) ) return cson_rc.TypeError;
2732 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val ) return CSON_RC_ArgError;
2733 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ! cson_value_is_object(val) ) return CSON_RC_TypeError;
2734 2734 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2735 2735 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2736 2736 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(obj) *obj = CSON_OBJ(val);
2737 2737 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2738 2738 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2744,12 +2744,12 @@
2744 2744 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return obj;
2745 2745 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2746 2746 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2747 2747 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_value_fetch_array( cson_value const * val, cson_array ** ar)
2748 2748 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2749 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! val ) return cson_rc.ArgError;
2750 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !cson_value_is_array(val) ) return cson_rc.TypeError;
2749 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! val ) return CSON_RC_ArgError;
2750 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !cson_value_is_array(val) ) return CSON_RC_TypeError;
2751 2751 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2752 2752 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2753 2753 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(ar) *ar = CSON_ARRAY(val);
2754 2754 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2755 2755 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2760,11 +2760,11 @@
2760 2760 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_array * ar = NULL;
2761 2761 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value_fetch_array( v, &ar );
2762 2762 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return ar;
2763 2763 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2764 2764 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2765 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_kvp * cson_kvp_alloc()
2765 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_kvp * cson_kvp_alloc(void)
2766 2766 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2767 2767 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp * kvp = (cson_kvp*)cson_malloc(sizeof(cson_kvp),"cson_kvp");
2768 2768 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( kvp )
2769 2769 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2770 2770 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*kvp = cson_kvp_empty;
@@ -2774,20 +2774,20 @@
2774 2774 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2775 2775 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2776 2776 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2777 2777 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_array_append( cson_array * ar, cson_value * v )
2778 2778 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2779 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !ar || !v ) return cson_rc.ArgError;
2780 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( (ar->list.count+1) < ar->list.count ) return cson_rc.RangeError;
2779 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !ar || !v ) return CSON_RC_ArgError;
2780 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( (ar->list.count+1) < ar->list.count ) return CSON_RC_RangeError;
2781 2781 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2782 2782 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2783 2783 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !ar->list.alloced || (ar->list.count == ar->list.alloced-1))
2784 2784 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2785 2785 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int const n = ar->list.count ? (ar->list.count*2) : 7;
2786 2786 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( n > cson_value_list_reserve( &ar->list, n ) )
2787 2787 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2788 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
2788 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
2789 2789 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2790 2790 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2791 2791 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_array_set( ar, ar->list.count, v );
2792 2792 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2793 2793 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2832,20 +2832,20 @@
2832 2832 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * cson_value_new_bool( char v )
2833 2833 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2834 2834 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return v ? &CSON_SPECIAL_VALUES[CSON_VAL_TRUE] : &CSON_SPECIAL_VALUES[CSON_VAL_FALSE];
2835 2835 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2836 2836 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2837 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_value * cson_value_true()
2837 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * cson_value_true(void)
2838 2838 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2839 2839 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return &CSON_SPECIAL_VALUES[CSON_VAL_TRUE];
2840 2840 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2841 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_value * cson_value_false()
2841 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * cson_value_false(void)
2842 2842 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2843 2843 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return &CSON_SPECIAL_VALUES[CSON_VAL_FALSE];
2844 2844 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2845 2845 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2846 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- cson_value * cson_value_null()
2846 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * cson_value_null(void)
2847 2847 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2848 2848 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return &CSON_SPECIAL_VALUES[CSON_VAL_NULL];
2849 2849 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2850 2850 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2851 2851 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * cson_new_int( cson_int_t v )
@@ -2917,12 +2917,12 @@
2917 2917 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_string_value( cson_new_string(str, len) );
2918 2918 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2919 2919 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2920 2920 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_array_value_fetch( cson_array const * ar, unsigned int pos, cson_value ** v )
2921 2921 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2922 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !ar) return cson_rc.ArgError;
2923 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( pos >= ar->list.count ) return cson_rc.RangeError;
2922 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !ar) return CSON_RC_ArgError;
2923 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( pos >= ar->list.count ) return CSON_RC_RangeError;
2924 2924 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2925 2925 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2926 2926 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(v) *v = ar->list.list[pos];
2927 2927 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2928 2928 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2935,11 +2935,11 @@
2935 2935 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return v;
2936 2936 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2937 2937 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2938 2938 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_array_length_fetch( cson_array const * ar, unsigned int * v )
2939 2939 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2940 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! ar || !v ) return cson_rc.ArgError;
2940 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! ar || !v ) return CSON_RC_ArgError;
2941 2941 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2942 2942 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2943 2943 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(v) *v = ar->list.count;
2944 2944 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2945 2945 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -2952,11 +2952,11 @@
2952 2952 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return i;
2953 2953 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2954 2954 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2955 2955 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_array_reserve( cson_array * ar, unsigned int size )
2956 2956 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2957 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! ar ) return cson_rc.ArgError;
2957 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! ar ) return CSON_RC_ArgError;
2958 2958 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( size <= ar->list.alloced )
2959 2959 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2960 2960 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* We don't want to introduce a can of worms by trying to
2961 2961 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
handle the cleanup from here.
2962 2962 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
@@ -2963,24 +2963,24 @@
2963 2963 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
2964 2964 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2965 2965 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2966 2966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2967 2967 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return (ar->list.alloced > cson_value_list_reserve( &ar->list, size ))
2968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ? cson_rc.AllocError
2968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ? CSON_RC_AllocError
2969 2969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: 0
2970 2970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
;
2971 2971 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2972 2972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
2973 2973 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
2974 2974 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_array_set( cson_array * ar, unsigned int ndx, cson_value * v )
2975 2975 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2976 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !ar || !v ) return cson_rc.ArgError;
2977 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( (ndx+1) < ndx) /* overflow */return cson_rc.RangeError;
2976 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !ar || !v ) return CSON_RC_ArgError;
2977 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( (ndx+1) < ndx) /* overflow */return CSON_RC_RangeError;
2978 2978 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2979 2979 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2980 2980 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned const int len = cson_value_list_reserve( &ar->list, ndx+1 );
2981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( len <= ndx ) return cson_rc.AllocError;
2981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( len <= ndx ) return CSON_RC_AllocError;
2982 2982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
2983 2983 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
2984 2984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * old = ar->list.list[ndx];
2985 2985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( old )
2986 2986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
@@ -3076,18 +3076,18 @@
3076 3076 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3077 3077 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#endif
3078 3078 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3079 3079 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_unset( cson_object * obj, char const * key )
3080 3080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3081 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! obj || !key || !*key ) return cson_rc.ArgError;
3081 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! obj || !key || !*key ) return CSON_RC_ArgError;
3082 3082 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3083 3083 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3084 3084 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int ndx = 0;
3085 3085 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp * kvp = cson_object_search_impl( obj, key, &ndx );
3086 3086 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! kvp )
3087 3087 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3088 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.NotFoundError;
3088 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_NotFoundError;
3089 3089 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3090 3090 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( obj->kvp.count > 0 );
3091 3091 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( obj->kvp.list[ndx] == kvp );
3092 3092 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp_free( kvp );
3093 3093 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
obj->kvp.list[ndx] = NULL;
@@ -3109,21 +3109,21 @@
3109 3109 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3110 3110 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3111 3111 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3112 3112 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_set_s( cson_object * obj, cson_string * key, cson_value * v )
3113 3113 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !obj || !key ) return cson_rc.ArgError;
3114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !obj || !key ) return CSON_RC_ArgError;
3115 3115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( NULL == v ) return cson_object_unset( obj, cson_string_cstr(key) );
3116 3116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3117 3117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3118 3118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * cKey;
3119 3119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * vKey;
3120 3120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp * kvp;
3121 3121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
vKey = cson_string_value(key);
3122 3122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(vKey && (key==CSON_STR(vKey)));
3123 3123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( vKey == CSON_VCAST(obj) ){
3124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.ArgError;
3124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_ArgError;
3125 3125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3126 3126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cKey = cson_string_cstr(key);
3127 3127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
kvp = cson_object_search_impl( obj, cKey, NULL );
3128 3128 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( kvp )
3129 3129 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* "I told 'em we've already got one!" */
@@ -3142,19 +3142,19 @@
3142 3142 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !obj->kvp.alloced || (obj->kvp.count == obj->kvp.alloced-1))
3143 3143 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* reserve space */
3144 3144 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int const n = obj->kvp.count ? (obj->kvp.count*2) : 6;
3145 3145 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( n > cson_kvp_list_reserve( &obj->kvp, n ) )
3146 3146 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3147 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
3147 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
3148 3148 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3149 3149 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3150 3150 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* insert new item... */
3151 3151 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
3152 3152 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
kvp = cson_kvp_alloc();
3153 3153 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! kvp )
3154 3154 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3155 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
3155 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
3156 3156 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3157 3157 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_kvp_list_append( &obj->kvp, kvp );
3158 3158 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( 0 != rc )
3159 3159 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3160 3160 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp_free(kvp);
@@ -3174,19 +3174,19 @@
3174 3174 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3175 3175 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3176 3176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3177 3177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_set( cson_object * obj, char const * key, cson_value * v )
3178 3178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! obj || !key || !*key ) return cson_rc.ArgError;
3179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! obj || !key || !*key ) return CSON_RC_ArgError;
3180 3180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( NULL == v )
3181 3181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3182 3182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_object_unset( obj, key );
3183 3183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3184 3184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3185 3185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3186 3186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string * cs = cson_new_string(key,strlen(key));
3187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(!cs) return cson_rc.AllocError;
3187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(!cs) return CSON_RC_AllocError;
3188 3188 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3189 3189 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3190 3190 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int const rc = cson_object_set_s(obj, cs, v);
3191 3191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(rc) cson_value_free(cson_string_value(cs));
3192 3192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
@@ -3237,13 +3237,13 @@
3237 3237 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3238 3238 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3239 3239 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/** @internal
3240 3240 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3241 3241 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
If p->node is-a Object then value is inserted into the object
3242 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- using p->key. In any other case cson_rc.InternalError is returned.
3242 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ using p->key. In any other case CSON_RC_InternalError is returned.
3243 3243 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3244 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Returns cson_rc.AllocError if an allocation fails.
3244 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Returns CSON_RC_AllocError if an allocation fails.
3245 3245 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3246 3246 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Returns 0 on success. On error, parsing must be ceased immediately.
3247 3247 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3248 3248 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Ownership of val is ALWAYS TRANSFERED to this function. If this
3249 3249 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
function fails, val will be cleaned up and destroyed. (This
@@ -3267,18 +3267,18 @@
3267 3267 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !obj->kvp.alloced || (obj->kvp.count == obj->kvp.alloced-1))
3268 3268 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3269 3269 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( obj->kvp.alloced > cson_kvp_list_reserve( &obj->kvp, obj->kvp.count ? (obj->kvp.count*2) : 5 ) )
3270 3270 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3271 3271 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value_free(val);
3272 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
3272 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
3273 3273 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3274 3274 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3275 3275 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
kvp = cson_kvp_alloc();
3276 3276 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! kvp )
3277 3277 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3278 3278 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value_free(val);
3279 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
3279 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
3280 3280 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3281 3281 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
kvp->key = cson_string_value(p->ckey)/*transfer ownership*/;
3282 3282 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(0 == kvp->key->refcount);
3283 3283 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_refcount_incr(kvp->key);
3284 3284 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
p->ckey = NULL;
@@ -3296,11 +3296,11 @@
3296 3296 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
3297 3297 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3298 3298 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3299 3299 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3300 3300 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(val) cson_value_free(val);
3301 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return p->errNo = cson_rc.InternalError;
3301 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return p->errNo = CSON_RC_InternalError;
3302 3302 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3303 3303 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3304 3304 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3305 3305 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3306 3306 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/** @internal
@@ -3337,11 +3337,11 @@
3337 3337 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
3338 3338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3339 3339 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3340 3340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* WTF? */
3341 3341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( 0 && "Internal error in cson_parser code" );
3342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return p->errNo = cson_rc.InternalError;
3342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return p->errNo = CSON_RC_InternalError;
3343 3343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3344 3344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3345 3345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3346 3346 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/**
3347 3347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Callback for JSON_parser API. Reminder: it returns 0 (meaning false)
@@ -3349,20 +3349,20 @@
3349 3349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
3350 3350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_parse_callback( void * cx, int type, JSON_value const * value )
3351 3351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3352 3352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parser * p = (cson_parser *)cx;
3353 3353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
3354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #define ALLOC_V(T,V) cson_value * v = cson_value_new_##T(V); if( ! v ) { rc = cson_rc.AllocError; break; }
3354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define ALLOC_V(T,V) cson_value * v = cson_value_new_##T(V); if( ! v ) { rc = CSON_RC_AllocError; break; }
3355 3355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch(type) {
3356 3356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_ARRAY_BEGIN:
3357 3357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_OBJECT_BEGIN: {
3358 3358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * obja = (JSON_T_ARRAY_BEGIN == type)
3359 3359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
? cson_value_new_array()
3360 3360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: cson_value_new_object();
3361 3361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! obja )
3362 3362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- p->errNo = cson_rc.AllocError;
3363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ p->errNo = CSON_RC_AllocError;
3364 3364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3365 3365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3366 3366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( 0 != rc ) break;
3367 3367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! p->root )
3368 3368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
@@ -3395,11 +3395,11 @@
3395 3395 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3396 3396 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_ARRAY_END:
3397 3397 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_OBJECT_END: {
3398 3398 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( 0 == p->stack.list.count )
3399 3399 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3400 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.RangeError;
3400 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_RangeError;
3401 3401 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3402 3402 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3403 3403 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#if CSON_OBJECT_PROPS_SORT
3404 3404 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( cson_value_is_object(p->node) )
3405 3405 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{/* kludge: the parser uses custom cson_object property
@@ -3481,26 +3481,26 @@
3481 3481 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_KEY: {
3482 3482 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(!p->ckey);
3483 3483 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
p->ckey = cson_new_string( value->vu.str.value, value->vu.str.length );
3484 3484 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! p->ckey )
3485 3485 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3486 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.AllocError;
3486 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_AllocError;
3487 3487 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3488 3488 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3489 3489 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
++p->totalKeyCount;
3490 3490 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3491 3491 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3492 3492 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_T_STRING: {
3493 3493 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * v = cson_value_new_string( value->vu.str.value, value->vu.str.length );
3494 3494 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = ( NULL == v )
3495 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ? cson_rc.AllocError
3495 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ? CSON_RC_AllocError
3496 3496 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: cson_parser_push_value( p, v );
3497 3497 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3498 3498 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3499 3499 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
3500 3500 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(0);
3501 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.InternalError;
3501 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_InternalError;
3502 3502 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3503 3503 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3504 3504 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef ALLOC_V
3505 3505 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return ((p->errNo = rc)) ? 0 : 1;
3506 3506 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -3512,22 +3512,22 @@
3512 3512 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_json_err_to_rc( JSON_error jrc )
3513 3513 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3514 3514 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch(jrc)
3515 3515 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3516 3516 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case JSON_E_NONE: return 0;
3517 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_INVALID_CHAR: return cson_rc.Parse_INVALID_CHAR;
3518 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_INVALID_KEYWORD: return cson_rc.Parse_INVALID_KEYWORD;
3519 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_INVALID_ESCAPE_SEQUENCE: return cson_rc.Parse_INVALID_ESCAPE_SEQUENCE;
3520 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_INVALID_UNICODE_SEQUENCE: return cson_rc.Parse_INVALID_UNICODE_SEQUENCE;
3521 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_INVALID_NUMBER: return cson_rc.Parse_INVALID_NUMBER;
3522 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_NESTING_DEPTH_REACHED: return cson_rc.Parse_NESTING_DEPTH_REACHED;
3523 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_UNBALANCED_COLLECTION: return cson_rc.Parse_UNBALANCED_COLLECTION;
3524 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_EXPECTED_KEY: return cson_rc.Parse_EXPECTED_KEY;
3525 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_EXPECTED_COLON: return cson_rc.Parse_EXPECTED_COLON;
3526 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- case JSON_E_OUT_OF_MEMORY: return cson_rc.AllocError;
3517 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_INVALID_CHAR: return CSON_RC_Parse_INVALID_CHAR;
3518 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_INVALID_KEYWORD: return CSON_RC_Parse_INVALID_KEYWORD;
3519 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_INVALID_ESCAPE_SEQUENCE: return CSON_RC_Parse_INVALID_ESCAPE_SEQUENCE;
3520 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_INVALID_UNICODE_SEQUENCE: return CSON_RC_Parse_INVALID_UNICODE_SEQUENCE;
3521 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_INVALID_NUMBER: return CSON_RC_Parse_INVALID_NUMBER;
3522 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_NESTING_DEPTH_REACHED: return CSON_RC_Parse_NESTING_DEPTH_REACHED;
3523 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_UNBALANCED_COLLECTION: return CSON_RC_Parse_UNBALANCED_COLLECTION;
3524 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_EXPECTED_KEY: return CSON_RC_Parse_EXPECTED_KEY;
3525 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_EXPECTED_COLON: return CSON_RC_Parse_EXPECTED_COLON;
3526 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case JSON_E_OUT_OF_MEMORY: return CSON_RC_AllocError;
3527 3527 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
3528 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.InternalError;
3528 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_InternalError;
3529 3529 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3530 3530 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3531 3531 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3532 3532 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/** @internal
3533 3533 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@@ -3543,11 +3543,11 @@
3543 3543 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
any other items inserted into it (or under it) during the parsing
3544 3544 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
process.
3545 3545 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
3546 3546 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_parser_clean( cson_parser * p )
3547 3547 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3548 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! p ) return cson_rc.ArgError;
3548 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! p ) return CSON_RC_ArgError;
3549 3549 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3550 3550 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3551 3551 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( p->p )
3552 3552 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3553 3553 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
delete_JSON_parser(p->p);
@@ -3574,11 +3574,11 @@
3574 3574 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_opt const opt = opt_ ? *opt_ : cson_parse_opt_empty;
3575 3575 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
3576 3576 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int len = 1;
3577 3577 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_info info = info_ ? *info_ : cson_parse_info_empty;
3578 3578 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parser p = cson_parser_empty;
3579 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! tgt || ! src ) return cson_rc.ArgError;
3579 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! tgt || ! src ) return CSON_RC_ArgError;
3580 3580 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3581 3581 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3582 3582 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
JSON_config jopt = {0};
3583 3583 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
init_JSON_config( &jopt );
3584 3584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
jopt.allow_comments = opt.allowComments;
@@ -3587,11 +3587,11 @@
3587 3587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
jopt.handle_floats_manually = 0;
3588 3588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
jopt.callback = cson_parse_callback;
3589 3589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
p.p = new_JSON_parser(&jopt);
3590 3590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! p.p )
3591 3591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.AllocError;
3592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_AllocError;
3593 3593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3594 3594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3595 3595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3596 3596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
do
3597 3597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* FIXME: buffer the input in multi-kb chunks. */
@@ -3608,11 +3608,11 @@
3608 3608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3609 3609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! JSON_parser_char(p.p, ch[0]) )
3610 3610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3611 3611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_json_err_to_rc( JSON_parser_get_last_error(p.p) );
3612 3612 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(0==rc) rc = p.errNo;
3613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(0==rc) rc = cson_rc.InternalError;
3613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(0==rc) rc = CSON_RC_InternalError;
3614 3614 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
info.errorCode = rc;
3615 3615 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3616 3616 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3617 3617 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( '\n' != ch[0]) ++info.col;
3618 3618 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
} while(1);
@@ -3630,11 +3630,11 @@
3630 3630 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( ! JSON_parser_done(p.p) )
3631 3631 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3632 3632 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_json_err_to_rc( JSON_parser_get_last_error(p.p) );
3633 3633 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parser_clean(&p);
3634 3634 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(0==rc) rc = p.errNo;
3635 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(0==rc) rc = cson_rc.InternalError;
3635 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(0==rc) rc = CSON_RC_InternalError;
3636 3636 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3637 3637 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3638 3638 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3639 3639 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * root = p.root;
3640 3640 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
p.root = NULL;
@@ -3652,11 +3652,11 @@
3652 3652 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/;
3653 3653 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*tgt = root;
3654 3654 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3655 3655 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3656 3656 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* then can happen on empty input. */
3657 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.UnknownError;
3657 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_UnknownError;
3658 3658 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3659 3659 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3660 3660 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
3661 3661 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3662 3662 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
@@ -3771,11 +3771,11 @@
3771 3771 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
3772 3772 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_str_to_json( char const * str, unsigned int len,
3773 3773 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char escapeFwdSlash,
3774 3774 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_data_dest_f f, void * state )
3775 3775 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3776 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( NULL == f ) return cson_rc.ArgError;
3776 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( NULL == f ) return CSON_RC_ArgError;
3777 3777 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( !str || !*str || (0 == len) )
3778 3778 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* special case for 0-length strings. */
3779 3779 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return f( state, "\"\"", 2 );
3780 3780 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3781 3781 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
@@ -3877,26 +3877,26 @@
3877 3877 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#if defined(CSON_FOSSIL_MODE)
3878 3878 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assume_latin1:
3879 3879 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#endif
3880 3880 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset(ubuf,0,UBLen);
3881 3881 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(ch <= 0xFFFF){
3882 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = sprintf(ubuf, "\\u%04x",ch);
3882 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = snprintf(ubuf, (size_t)UBLen, "\\u%04x",ch);
3883 3883 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( rc != 6 )
3884 3884 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3885 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.RangeError;
3885 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_RangeError;
3886 3886 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3887 3887 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3888 3888 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = f( state, ubuf, 6 );
3889 3889 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else{ /* encode as a UTF16 surrogate pair */
3890 3890 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* http://unicodebook.readthedocs.org/en/latest/unicode_encodings.html#surrogates */
3891 3891 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ch -= 0x10000;
3892 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = sprintf(ubuf, "\\u%04x\\u%04x",
3893 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- (0xd800 | (ch>>10)),
3894 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- (0xdc00 | (ch & 0x3ff)));
3892 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = snprintf(ubuf, (size_t)UBLen, "\\u%04x\\u%04x",
3893 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ (0xd800 | (ch>>10)),
3894 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ (0xdc00 | (ch & 0x3ff)));
3895 3895 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( rc != 12 )
3896 3896 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3897 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.RangeError;
3897 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_RangeError;
3898 3898 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
3899 3899 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3900 3900 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = f( state, ubuf, 12 );
3901 3901 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3902 3902 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
continue;
@@ -3910,11 +3910,11 @@
3910 3910 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3911 3911 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3912 3912 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3913 3913 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_iter_init( cson_object const * obj, cson_object_iterator * iter )
3914 3914 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3915 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! obj || !iter ) return cson_rc.ArgError;
3915 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! obj || !iter ) return CSON_RC_ArgError;
3916 3916 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3917 3917 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3918 3918 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
iter->obj = obj;
3919 3919 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
iter->pos = 0;
3920 3920 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
@@ -3936,64 +3936,62 @@
3936 3936 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3937 3937 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3938 3938 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3939 3939 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_null( cson_data_dest_f f, void * state )
3940 3940 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3941 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.ArgError;
3941 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_ArgError;
3942 3942 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3943 3943 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3944 3944 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return f(state, "null", 4);
3945 3945 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3946 3946 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3947 3947 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3948 3948 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_bool( cson_value const * src, cson_data_dest_f f, void * state )
3949 3949 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3950 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.ArgError;
3950 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_ArgError;
3951 3951 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3952 3952 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3953 3953 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const v = cson_value_get_bool(src);
3954 3954 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return f(state, v ? "true" : "false", v ? 4 : 5);
3955 3955 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3956 3956 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3957 3957 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3958 3958 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_integer( cson_value const * src, cson_data_dest_f f, void * state )
3959 3959 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3960 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.ArgError;
3961 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !cson_value_is_integer(src) ) return cson_rc.TypeError;
3960 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_ArgError;
3961 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !cson_value_is_integer(src) ) return CSON_RC_TypeError;
3962 3962 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3963 3963 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3964 3964 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
enum { BufLen = 100 };
3965 3965 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char b[BufLen];
3966 3966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
3967 3967 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset( b, 0, BufLen );
3968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = sprintf( b, "%"CSON_INT_T_PFMT, cson_value_get_integer(src) )
3969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- /* Reminder: snprintf() is C99 */
3970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ;
3968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = snprintf( b, (size_t)BufLen, "%"CSON_INT_T_PFMT,
3969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_integer(src) );
3971 3970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return ( rc<=0 )
3972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ? cson_rc.RangeError
3971 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ? CSON_RC_RangeError
3973 3972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: f( state, b, (unsigned int)rc )
3974 3973 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
;
3975 3974 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3976 3975 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
3977 3976 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
3978 3977 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_double( cson_value const * src, cson_data_dest_f f, void * state )
3979 3978 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3980 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.ArgError;
3981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !cson_value_is_double(src) ) return cson_rc.TypeError;
3979 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_ArgError;
3980 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !cson_value_is_double(src) ) return CSON_RC_TypeError;
3982 3981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
3983 3982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
3984 3983 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
enum { BufLen = 128 /* this must be relatively large or huge
3985 3984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
doubles can cause us to overrun here,
3986 3985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
resulting in stack-smashing errors.
3987 3986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/};
3988 3987 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char b[BufLen];
3989 3988 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
3990 3989 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset( b, 0, BufLen );
3991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = sprintf( b, "%"CSON_DOUBLE_T_PFMT, cson_value_get_double(src) )
3992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- /* Reminder: snprintf() is C99 */
3993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ;
3994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( rc<=0 ) return cson_rc.RangeError;
3990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = snprintf( b, (size_t)BufLen, "%"CSON_DOUBLE_T_PFMT,
3991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_double(src) );
3992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( rc<=0 ) return CSON_RC_RangeError;
3995 3993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if(1)
3996 3994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{ /* Strip trailing zeroes before passing it on... */
3997 3995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int urc = (unsigned int)rc;
3998 3996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char * pos = b + urc - 1;
3999 3997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for( ; ('0' == *pos) && urc && (*(pos-1) != '.'); --pos, --urc )
@@ -4012,12 +4010,12 @@
4012 4010 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4013 4011 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4014 4012 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4015 4013 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_string( cson_value const * src, char escapeFwdSlash, cson_data_dest_f f, void * state )
4016 4014 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4017 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.ArgError;
4018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( ! cson_value_is_string(src) ) return cson_rc.TypeError;
4015 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_ArgError;
4016 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ! cson_value_is_string(src) ) return CSON_RC_TypeError;
4019 4017 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4020 4018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4021 4019 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string const * str = cson_value_get_string(src);
4022 4020 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( NULL != str );
4023 4021 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return cson_str_to_json(cson_string_cstr(str), str->length, escapeFwdSlash, f, state);
@@ -4075,11 +4073,11 @@
4075 4073 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
Returns 0 on success.
4076 4074 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
4077 4075 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_impl( cson_value const * src, cson_data_dest_f f, void * state,
4078 4076 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_output_opt const * fmt, unsigned int level )
4079 4077 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! src || !f || !src->api ) return cson_rc.ArgError;
4078 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! src || !f || !src->api ) return CSON_RC_ArgError;
4081 4079 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4082 4080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4083 4081 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
4084 4082 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert(fmt);
4085 4083 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
switch( src->api->typeID )
@@ -4105,11 +4103,11 @@
4105 4103 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4106 4104 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_OBJECT:
4107 4105 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_output_object( src, f, state, fmt, level );
4108 4106 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4109 4107 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
default:
4110 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.TypeError;
4108 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_TypeError;
4111 4109 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4112 4110 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4113 4111 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
4114 4112 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4115 4113 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -4116,13 +4114,13 @@
4116 4114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4117 4115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4118 4116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_array( cson_value const * src, cson_data_dest_f f, void * state,
4119 4117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_output_opt const * fmt, unsigned int level )
4120 4118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !src || !f || !fmt ) return cson_rc.ArgError;
4122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( ! cson_value_is_array(src) ) return cson_rc.TypeError;
4123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( level > fmt->maxDepth ) return cson_rc.RangeError;
4119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !src || !f || !fmt ) return CSON_RC_ArgError;
4120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ! cson_value_is_array(src) ) return CSON_RC_TypeError;
4121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( level > fmt->maxDepth ) return CSON_RC_RangeError;
4124 4122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4125 4123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4126 4124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
4127 4125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int i;
4128 4126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value const * v;
@@ -4177,13 +4175,13 @@
4177 4175 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4178 4176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4179 4177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_output_object( cson_value const * src, cson_data_dest_f f, void * state,
4180 4178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_output_opt const * fmt, unsigned int level )
4181 4179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !src || !f || !fmt ) return cson_rc.ArgError;
4183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( ! cson_value_is_object(src) ) return cson_rc.TypeError;
4184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( level > fmt->maxDepth ) return cson_rc.RangeError;
4180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !src || !f || !fmt ) return CSON_RC_ArgError;
4181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ! cson_value_is_object(src) ) return CSON_RC_TypeError;
4182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( level > fmt->maxDepth ) return CSON_RC_RangeError;
4185 4183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4186 4184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4187 4185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
4188 4186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int i;
4189 4187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp const * kvp;
@@ -4267,17 +4265,17 @@
4267 4265 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
4268 4266 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4269 4267 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4270 4268 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_data_dest_FILE( void * state, void const * src, unsigned int n )
4271 4269 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4272 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! state ) return cson_rc.ArgError;
4270 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! state ) return CSON_RC_ArgError;
4273 4271 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( !src || !n ) return 0;
4274 4272 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4275 4273 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4276 4274 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return ( 1 == fwrite( src, n, 1, (FILE*) state ) )
4277 4275 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
? 0
4278 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- : cson_rc.IOError;
4276 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ : CSON_RC_IOError;
4279 4277 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4280 4278 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4281 4279 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4282 4280 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_output_FILE( cson_value const * src, FILE * dest, cson_output_opt const * fmt )
4283 4281 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
@@ -4300,15 +4298,15 @@
4300 4298 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
4301 4299 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4302 4300 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4303 4301 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_output_filename( cson_value const * src, char const * dest, cson_output_opt const * fmt )
4304 4302 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4305 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !src || !dest ) return cson_rc.ArgError;
4303 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !src || !dest ) return CSON_RC_ArgError;
4306 4304 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4307 4305 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4308 4306 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FILE * f = fopen(dest,"wb");
4309 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.IOError;
4307 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_IOError;
4310 4308 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4311 4309 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4312 4310 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int const rc = cson_output_FILE( src, f, fmt );
4313 4311 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
fclose(f);
4314 4312 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
@@ -4317,15 +4315,15 @@
4317 4315 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4318 4316 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4319 4317 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_parse_filename( cson_value ** tgt, char const * src,
4320 4318 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_opt const * opt, cson_parse_info * err )
4321 4319 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4322 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !src || !tgt ) return cson_rc.ArgError;
4320 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !src || !tgt ) return CSON_RC_ArgError;
4323 4321 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4324 4322 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4325 4323 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FILE * f = fopen(src, "r");
4326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !f ) return cson_rc.IOError;
4324 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !f ) return CSON_RC_IOError;
4327 4325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4328 4326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4329 4327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int const rc = cson_parse_FILE( tgt, f, opt, err );
4330 4328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
fclose(f);
4331 4329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return rc;
@@ -4349,11 +4347,11 @@
4349 4347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
A cson_data_source_f() implementation which requires the state argument
4350 4348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
to be a properly populated (cson_data_source_StringSource_t*).
4351 4349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
4352 4350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_data_source_StringSource( void * state, void * dest, unsigned int * n )
4353 4351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !state || !n || !dest ) return cson_rc.ArgError;
4352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !state || !n || !dest ) return CSON_RC_ArgError;
4355 4353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( !*n ) return 0 /* ignore this */;
4356 4354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4357 4355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4358 4356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int i;
4359 4357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_data_source_StringSource_t * ss = (cson_data_source_StringSource_t*) state;
@@ -4368,12 +4366,12 @@
4368 4366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4369 4367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4370 4368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_parse_string( cson_value ** tgt, char const * src, unsigned int len,
4371 4369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_opt const * opt, cson_parse_info * err )
4372 4370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! tgt || !src ) return cson_rc.ArgError;
4374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !*src || (len<2/*2==len of {} and []*/) ) return cson_rc.RangeError;
4371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! tgt || !src ) return CSON_RC_ArgError;
4372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !*src || (len<2/*2==len of {} and []*/) ) return CSON_RC_RangeError;
4375 4373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4376 4374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4377 4375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_data_source_StringSource_t ss;
4378 4376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ss.str = ss.pos = src;
4379 4377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ss.end = src + len;
@@ -4386,18 +4384,18 @@
4386 4384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_buffer const * buf,
4387 4385 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_opt const * opt,
4388 4386 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_parse_info * err )
4389 4387 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4390 4388 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return ( !tgt || !buf || !buf->mem || !buf->used )
4391 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- ? cson_rc.ArgError
4389 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ? CSON_RC_ArgError
4392 4390 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
: cson_parse_string( tgt, (char const *)buf->mem,
4393 4391 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
buf->used, opt, err );
4394 4392 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4395 4393 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4396 4394 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_buffer_reserve( cson_buffer * buf, cson_size_t n )
4397 4395 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4398 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! buf ) return cson_rc.ArgError;
4396 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! buf ) return CSON_RC_ArgError;
4399 4397 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( 0 == n )
4400 4398 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4401 4399 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_free(buf->mem, "cson_buffer::mem");
4402 4400 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*buf = cson_buffer_empty;
4403 4401 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
@@ -4407,11 +4405,11 @@
4407 4405 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
4408 4406 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4409 4407 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4410 4408 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4411 4409 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned char * x = (unsigned char *)cson_realloc( buf->mem, n, "cson_buffer::mem" );
4412 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! x ) return cson_rc.AllocError;
4410 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! x ) return CSON_RC_AllocError;
4413 4411 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset( x + buf->used, 0, n - buf->used );
4414 4412 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
buf->mem = x;
4415 4413 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
buf->capacity = n;
4416 4414 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
++buf->timesExpanded;
4417 4415 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
@@ -4434,11 +4432,11 @@
4434 4432 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
arg MUST be a (cson_buffer*). This function appends n bytes at
4435 4433 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
position arg->used, expanding the buffer as necessary.
4436 4434 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
*/
4437 4435 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
static int cson_data_dest_cson_buffer( void * arg, void const * data_, unsigned int n )
4438 4436 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4439 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !arg ) return cson_rc.ArgError;
4437 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !arg ) return CSON_RC_ArgError;
4440 4438 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( ! n ) return 0;
4441 4439 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4442 4440 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4443 4441 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_buffer * sb = (cson_buffer*)arg;
4444 4442 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * data = (char const *)data_;
@@ -4446,12 +4444,12 @@
4446 4444 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int i;
4447 4445 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( npos >= sb->capacity )
4448 4446 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4449 4447 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const cson_size_t oldCap = sb->capacity;
4450 4448 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
const cson_size_t asz = npos * 2;
4451 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( asz < npos ) return cson_rc.ArgError; /* overflow */
4452 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( 0 != cson_buffer_reserve( sb, asz ) ) return cson_rc.AllocError;
4449 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( asz < npos ) return CSON_RC_ArgError; /* overflow */
4450 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( 0 != cson_buffer_reserve( sb, asz ) ) return CSON_RC_AllocError;
4453 4451 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( (sb->capacity > oldCap) && "Internal error in memory buffer management!" );
4454 4452 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* make sure it gets NUL terminated. */
4455 4453 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset( sb->mem + oldCap, 0, (sb->capacity - oldCap) );
4456 4454 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4457 4455 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for( i = 0; i < n; ++i, ++sb->used )
@@ -4533,19 +4531,19 @@
4533 4531 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return (pos > *inp) ? 1 : 0;
4534 4532 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4535 4533 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4536 4534 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_fetch_sub2( cson_object const * obj, cson_value ** tgt, char const * path )
4537 4535 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4538 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! obj || !path ) return cson_rc.ArgError;
4539 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !*path || !*(1+path) ) return cson_rc.RangeError;
4536 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! obj || !path ) return CSON_RC_ArgError;
4537 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !*path || !*(1+path) ) return CSON_RC_RangeError;
4540 4538 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else return cson_object_fetch_sub(obj, tgt, path+1, *path);
4541 4539 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4542 4540 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4543 4541 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_object_fetch_sub( cson_object const * obj, cson_value ** tgt, char const * path, char sep )
4544 4542 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4545 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( ! obj || !path ) return cson_rc.ArgError;
4546 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- else if( !*path || !sep ) return cson_rc.RangeError;
4543 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ! obj || !path ) return CSON_RC_ArgError;
4544 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !*path || !sep ) return CSON_RC_RangeError;
4547 4545 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4548 4546 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4549 4547 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * beg = path;
4550 4548 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * end = NULL;
4551 4549 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
@@ -4565,26 +4563,26 @@
4565 4563 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
++tokenCount;
4566 4564 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
beg = end;
4567 4565 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
end = NULL;
4568 4566 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4569 4567 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4570 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( 0 == tokenCount ) return cson_rc.RangeError;
4568 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( 0 == tokenCount ) return CSON_RC_RangeError;
4571 4569 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
beg = path;
4572 4570 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
end = NULL;
4573 4571 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for( i = 0; i < tokenCount; ++i, beg=end, end=NULL )
4574 4572 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4575 4573 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_next_token( &beg, sep, &end );
4576 4574 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( 1 == rc );
4577 4575 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( beg != end );
4578 4576 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( end > beg );
4579 4577 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
len = end - beg;
4580 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( len > (BufSize-1) ) return cson_rc.RangeError;
4578 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( len > (BufSize-1) ) return CSON_RC_RangeError;
4581 4579 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memset( buf, 0, len + 1 );
4582 4580 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
memcpy( buf, beg, len );
4583 4581 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
buf[len] = 0;
4584 4582 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cv = cson_object_get( curObj, buf );
4585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( NULL == cv ) return cson_rc.NotFoundError;
4583 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( NULL == cv ) return CSON_RC_NotFoundError;
4586 4584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else if( i == (tokenCount-1) )
4587 4585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4588 4586 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(tgt) *tgt = cv;
4589 4587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return 0;
4590 4588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -4594,15 +4592,15 @@
4594 4592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert((NULL != curObj) && "Detected mis-management of internal memory!");
4595 4593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4596 4594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* TODO: arrays. Requires numeric parsing for the index. */
4597 4595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
else
4598 4596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4599 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.NotFoundError;
4597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_NotFoundError;
4600 4598 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4601 4599 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4602 4600 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( i == tokenCount );
4603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- return cson_rc.NotFoundError;
4601 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return CSON_RC_NotFoundError;
4604 4602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4605 4603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4606 4604 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4607 4605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * cson_object_get_sub( cson_object const * obj, char const * path, char sep )
4608 4606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
@@ -4838,24 +4836,26 @@
4838 4836 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4839 4837 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_STRING: {
4840 4838 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string const * jstr = cson_value_get_string(orig);
4841 4839 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned const int slen = cson_string_length_bytes( jstr );
4842 4840 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( NULL != jstr );
4843 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- v = cson_strdup( cson_string_cstr( jstr ), slen );
4841 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ v = cson_strdup( cson_string_cstr( jstr ), slen );
4844 4842 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4845 4843 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4846 4844 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_INTEGER: {
4847 4845 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char buf[BufSize] = {0};
4848 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( 0 < sprintf( v, "%"CSON_INT_T_PFMT, cson_value_get_integer(orig)) )
4846 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( 0 < snprintf( v, (size_t)BufSize, "%"CSON_INT_T_PFMT,
4847 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_integer(orig)) )
4849 4848 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4850 4849 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
v = cson_strdup( buf, strlen(buf) );
4851 4850 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4852 4851 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4853 4852 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4854 4853 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_DOUBLE: {
4855 4854 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char buf[BufSize] = {0};
4856 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( 0 < sprintf( v, "%"CSON_DOUBLE_T_PFMT, cson_value_get_double(orig)) )
4855 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( 0 < snprintf( v, (size_t)BufSize, "%"CSON_DOUBLE_T_PFMT,
4856 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_double(orig)) )
4857 4857 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4858 4858 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
v = cson_strdup( buf, strlen(buf) );
4859 4859 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4860 4860 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4861 4861 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -4891,24 +4891,26 @@
4891 4891 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4892 4892 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_STRING: {
4893 4893 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string const * jstr = cson_value_get_string(orig);
4894 4894 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned const int slen = cson_string_length_bytes( jstr );
4895 4895 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
assert( NULL != jstr );
4896 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- v = cson_strdup( cson_string_cstr( jstr ), slen );
4896 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ v = cson_strdup( cson_string_cstr( jstr ), slen );
4897 4897 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4898 4898 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4899 4899 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_INTEGER: {
4900 4900 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char buf[BufSize] = {0};
4901 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( 0 < sprintf( v, "%"CSON_INT_T_PFMT, cson_value_get_integer(orig)) )
4901 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( 0 < snprintf( v, (size_t)BufSize, "%"CSON_INT_T_PFMT,
4902 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_integer(orig)) )
4902 4903 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4903 4904 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
v = cson_strdup( buf, strlen(buf) );
4904 4905 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4905 4906 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4906 4907 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4907 4908 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
case CSON_TYPE_DOUBLE: {
4908 4909 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char buf[BufSize] = {0};
4909 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( 0 < sprintf( v, "%"CSON_DOUBLE_T_PFMT, cson_value_get_double(orig)) )
4910 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( 0 < snprintf( v, (size_t)BufSize, "%"CSON_DOUBLE_T_PFMT,
4911 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_get_double(orig)) )
4910 4912 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4911 4913 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
v = cson_strdup( buf, strlen(buf) );
4912 4914 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
4913 4915 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
4914 4916 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -4988,11 +4990,11 @@
4988 4990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_object_iterator iter = cson_object_iterator_empty;
4989 4991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc;
4990 4992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const replace = (flags & CSON_MERGE_REPLACE);
4991 4993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const recurse = !(flags & CSON_MERGE_NO_RECURSE);
4992 4994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_kvp const * kvp;
4993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if((!dest || !src) || (dest==src)) return cson_rc.ArgError;
4995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if((!dest || !src) || (dest==src)) return CSON_RC_ArgError;
4994 4996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rc = cson_object_iter_init( src, &iter );
4995 4997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(rc) return rc;
4996 4998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
while( (kvp = cson_object_iter_next(&iter) ) )
4997 4999 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
4998 5000 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string * key = cson_kvp_key(kvp);
@@ -5052,11 +5054,11 @@
5052 5054 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int cson_parse_argv_flags( int argc, char const * const * argv,
5053 5055 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_object ** tgt, unsigned int * count ){
5054 5056 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_object * o = NULL;
5055 5057 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
5056 5058 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i = 0;
5057 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if(argc<1 || !argc || !tgt) return cson_rc.ArgError;
5059 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if(argc<1 || !argc || !tgt) return CSON_RC_ArgError;
5058 5060 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
o = *tgt ? *tgt : cson_new_object();
5059 5061 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(count) *count = 0;
5060 5062 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
for( i = 0; i < argc; ++i ){
5061 5063 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * arg = argv[i];
5062 5064 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
char const * key = arg;
@@ -5068,11 +5070,11 @@
5068 5070 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!*key) continue;
5069 5071 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
pos = key;
5070 5072 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
while( *pos && ('=' != *pos)) ++pos;
5071 5073 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
k = cson_new_string(key, pos-key);
5072 5074 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!k){
5073 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- rc = cson_rc.AllocError;
5075 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ rc = CSON_RC_AllocError;
5074 5076 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
break;
5075 5077 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
5076 5078 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!*pos){ /** --key */
5077 5079 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
v = cson_value_true();
5078 5080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}else{ /** --key=...*/
@@ -5110,10 +5112,1087 @@
5110 5112 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef CSON_VCAST
5111 5113 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef CSON_MALLOC_IMPL
5112 5114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef CSON_FREE_IMPL
5113 5115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#undef CSON_REALLOC_IMPL
5114 5116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* end file ./cson.c */
5117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* begin file ./cson_pack.c */
5118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* LICENSE
5119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Copyright (c) 2018 Guido Berhoerster <[email protected] >
5121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Permission is hereby granted, free of charge, to any person
5123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ obtaining a copy of this software and associated documentation
5124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ files (the "Software"), to deal in the Software without
5125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ restriction, including without limitation the rights to use,
5126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
5127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ copies of the Software, and to permit persons to whom the
5128 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Software is furnished to do so, subject to the following
5129 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ conditions:
5130 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5131 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ The above copyright notice and this permission notice shall be
5132 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ included in all copies or substantial portions of the Software.
5133 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5134 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
5135 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
5136 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
5137 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
5138 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
5139 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
5140 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
5141 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ OTHER DEALINGS IN THE SOFTWARE.
5142 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5143 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ */
5144 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5145 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #include <assert.h>
5146 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #include <stdlib.h>
5147 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #include <string.h>
5148 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5149 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5150 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #if __STDC_VERSION__ >= 199901L
5151 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define INLINE inline
5152 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #else
5153 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define INLINE
5154 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #endif /* __STDC_VERSION__ >= 199901L */
5155 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5156 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #define PACK_IGNORED_CHARS " \t\r\n:,"
5157 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5158 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ enum parser_state {
5159 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_INVALID,
5160 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_INITIAL,
5161 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_END,
5162 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_ARRAY_VALUE,
5163 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_PROPERTY_NAME,
5164 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ STATE_PROPERTY_VALUE
5165 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5166 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5167 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token
5168 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5169 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int type; /* type specifier */
5170 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int optional; /* optional property modifier */
5171 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int suppress; /* suppress assignment modifier */
5172 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int alloc; /* assignment allocation modifier */
5173 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int len_l; /* long length modifier */
5174 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5175 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state
5177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value;
5179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * property_name;
5180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ enum parser_state parser_state;
5181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int property_optional;
5182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unsigned int index;
5183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state_stack
5186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ size_t capacity;
5188 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ size_t top;
5189 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state *state;
5190 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union pack_value
5193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_array * array;
5195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_object * object;
5196 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * string;
5197 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_int_t i;
5198 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ double d;
5199 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ char b;
5200 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5201 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5202 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union unpack_value
5203 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5204 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_array ** arrayp;
5205 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_object ** objectp;
5206 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char ** stringp;
5207 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ char ** astringp;
5208 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_int_t * ip;
5209 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ double * dp;
5210 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ char * bp;
5211 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ };
5212 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5213 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static const char * next_token( const char * s, struct token * tok )
5214 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5215 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = -1;
5216 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->optional = 0;
5217 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->suppress = 0;
5218 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->alloc = 0;
5219 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->len_l = 0;
5220 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5221 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* skip ignored characters */
5222 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ while( ( *s != '\0' ) && ( strchr( PACK_IGNORED_CHARS, *s ) != NULL ) )
5223 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5224 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ s++;
5225 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5226 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5227 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( *s )
5228 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5229 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '%':
5230 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ for( s++; *s != '\0'; s++ )
5231 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5232 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( *s )
5233 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5234 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '?':
5235 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->optional++;
5236 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5237 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '*':
5238 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->suppress++;
5239 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5240 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'm':
5241 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->alloc++;
5242 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5243 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'l':
5244 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->len_l++;
5245 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5246 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'D':
5247 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* short form of "lld" */
5248 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->len_l += 2;
5249 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = 'd';
5250 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ s++;
5251 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5252 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'i':
5253 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* same as 'd' */
5254 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = 'd';
5255 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ s++;
5256 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5257 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 's': /* FALLTHROUGH */
5258 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'd': /* FALLTHROUGH */
5259 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'f': /* FALLTHROUGH */
5260 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'b': /* FALLTHROUGH */
5261 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'N': /* FALLTHROUGH */
5262 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[': /* FALLTHROUGH */
5263 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
5264 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = *s++;
5265 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5266 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
5267 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5268 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5269 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5270 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5271 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[': /* FALLTHROUGH */
5272 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
5273 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* short form of "*[" or "*{" */
5274 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = *s++;
5275 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->suppress = 1;
5276 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5277 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case ']': /* FALLTHROUGH */
5278 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '}':
5279 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = *s++;
5280 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5281 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '\0':
5282 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ tok->type = *s;
5283 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5284 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
5285 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5286 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5287 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5288 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ out:
5289 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ( tok->optional > 1 ) || ( tok->suppress > 1 ) || ( tok->alloc > 1 ) ||
5290 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ( tok->len_l > 2 ) || ( ( tok->type != 'd' ) && ( tok->len_l > 0 ) ) )
5291 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5292 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5293 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5294 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5295 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( s );
5296 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5297 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5298 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static struct state_stack * state_stack_create( size_t capacity )
5299 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5300 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state_stack * stack;
5301 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5302 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ assert( capacity >= 2 );
5303 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5304 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack = malloc( sizeof( struct state_stack ) );
5305 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack == NULL )
5306 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5307 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5308 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5309 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state = malloc( capacity * sizeof( struct state ) );
5310 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack->state == NULL )
5311 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5312 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( NULL );
5313 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5314 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->top = 0;
5315 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->capacity = capacity;
5316 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* initialize bottom of the stack */
5317 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state[0].parser_state = STATE_INVALID;
5318 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state[0].parent_value = NULL;
5319 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state[0].property_name = NULL;
5320 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state[0].property_optional = 0;
5321 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->state[0].index = 0;
5322 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5323 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( stack );
5324 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static INLINE struct state * state_stack_top( struct state_stack * stack )
5327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ assert( stack->top >= 1 );
5329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5330 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( &stack->state[stack->top] );
5331 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5332 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5333 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static INLINE void state_stack_push( struct state_stack * stack,
5334 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ enum parser_state parser_state,
5335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value,
5336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * property_name,
5337 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int property_optional,
5338 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unsigned int index )
5339 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5340 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state = &stack->state[++stack->top];
5341 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5342 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->parser_state = parser_state;
5343 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->parent_value = parent_value;
5344 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->property_name = property_name;
5345 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->property_optional = property_optional;
5346 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->index = index;
5347 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5348 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5349 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static INLINE void state_stack_pop( struct state_stack * stack )
5350 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5351 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ assert( stack->top >= 1 );
5352 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack->top--;
5354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int
5357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ on_pack_initial( struct state_stack * stack,
5358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token * tok,
5359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union pack_value * pack_value,
5360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value ** root_valuep )
5361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * value;
5363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * root_value;
5364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional || tok->alloc )
5366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == '[' )
5372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5373 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->suppress )
5374 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5375 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ root_value = cson_value_new_array( );
5376 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( root_value == NULL )
5377 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5378 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5379 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5380 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5381 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5382 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5383 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_array_value( pack_value->array );
5384 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ root_value = cson_value_clone( value );
5385 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5386 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5387 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5388 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_END, NULL, NULL, 0, 0 );
5389 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_ARRAY_VALUE, root_value, NULL, 0, 0 );
5390 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5391 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok->type == '{' )
5392 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5393 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->suppress )
5394 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5395 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ root_value = cson_value_new_object( );
5396 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( root_value == NULL )
5397 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5398 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5399 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5400 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5401 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5402 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5403 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_object_value( pack_value->object );
5404 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ root_value = cson_value_clone( value );
5405 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5406 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5407 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5408 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_END, NULL, NULL, 0, 0 );
5409 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_NAME, root_value, NULL, 0, 0 );
5410 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5411 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5412 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5413 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* root value is neither an object nor an array */
5414 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5415 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5416 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5417 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *root_valuep = root_value;
5418 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5419 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
5420 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5421 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5422 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_pack_property_name( struct state_stack * stack, struct token * tok, const char * property_name )
5423 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5424 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value;
5425 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5426 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional || tok->suppress || tok->alloc )
5427 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5428 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5429 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5430 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5431 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5432 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == 's' )
5433 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5434 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ parent_value = state_stack_top( stack )->parent_value;
5435 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5436 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_VALUE, parent_value, property_name, 0, 0 );
5437 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5438 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok->type == '}' )
5439 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5440 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5441 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5442 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5443 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5444 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* neither property specifier nor end of object */
5445 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5446 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5447 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5448 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
5449 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5450 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5451 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int
5452 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ handle_pack_value( struct state_stack * stack,
5453 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token * tok,
5454 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union pack_value * pack_value,
5455 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ enum parser_state new_parser_state )
5456 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5457 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * value;
5458 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_object * object;
5459 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_array * array;
5460 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int cson_retval;
5461 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
5462 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value;
5463 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5464 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* create value */
5465 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( tok->type )
5466 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5467 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[':
5468 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = tok->suppress ? cson_value_new_array( ) :
5469 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_clone( cson_array_value( pack_value->array ) );
5470 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5471 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5472 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5473 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5474 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5475 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
5476 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = tok->suppress ? cson_value_new_object( ) :
5477 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_clone( cson_object_value( pack_value->object ) );
5478 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5479 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5480 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5481 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5482 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5483 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 's':
5484 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_value_new_string( pack_value->string, strlen( pack_value->string ) );
5485 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5486 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5487 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5488 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5489 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5490 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'd':
5491 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_value_new_integer( pack_value->i );
5492 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5493 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5494 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5495 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5496 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5497 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'f':
5498 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_value_new_double( pack_value->d );
5499 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5500 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5501 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5502 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5503 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5504 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'b':
5505 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_value_new_bool( pack_value->b );
5506 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
5507 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5508 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5509 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5510 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5511 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'N':
5512 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_value_null( );
5513 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5514 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
5515 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid token type */
5516 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5517 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5518 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5519 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
5520 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ parent_value = state->parent_value;
5521 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( cson_value_is_object( parent_value ) )
5522 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5523 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* set object property to value */
5524 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ object = cson_value_get_object( parent_value );
5525 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_retval = cson_object_set( object, state->property_name, value );
5526 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( cson_retval != 0 )
5527 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5528 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_free( value );
5529 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5530 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5531 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5532 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( cson_value_is_array( parent_value ) )
5533 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5534 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* append array value */
5535 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ array = cson_value_get_array( parent_value );
5536 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_retval = cson_array_append( array, value );
5537 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( cson_retval != 0 )
5538 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5539 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_free( value );
5540 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5541 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5542 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5543 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5544 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == '[' )
5545 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5546 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5547 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, 0 );
5548 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_ARRAY_VALUE, value, NULL, 0, 0 );
5549 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5550 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok->type == '{' )
5551 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5552 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5553 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, 0 );
5554 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_NAME, value, NULL, 0, 0 );
5555 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5556 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5557 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5558 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5559 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, 0 );
5560 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5561 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5562 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
5563 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5564 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5565 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_pack_array_value( struct state_stack * stack, struct token * tok, union pack_value * pack_value )
5566 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5567 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional || tok->alloc || ( tok->suppress && ( tok->type != '{' ) && ( tok->type != '[' ) ) )
5568 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5569 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5570 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5571 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5572 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5573 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == ']' )
5574 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5575 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* end of array specifier */
5576 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5577 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5578 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
5579 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5580 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5581 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( handle_pack_value( stack, tok, pack_value, STATE_ARRAY_VALUE ) );
5582 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5583 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_pack_property_value( struct state_stack * stack, struct token * tok, union pack_value * pack_value )
5585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5586 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional || tok->alloc || ( tok->suppress && ( tok->type != '{' ) && ( tok->type != '[' ) ) )
5587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( handle_pack_value( stack, tok, pack_value, STATE_PROPERTY_NAME ) );
5593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int cson_vpack( cson_value ** root_valuep, const char * fmt, va_list args )
5596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int retval = CSON_PACK_INTERNAL_ERROR;
5598 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * root_value = NULL;
5599 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state_stack * stack = NULL;
5600 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * p = fmt;
5601 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token tok = { 0 };
5602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
5603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union pack_value pack_value = { 0 };
5604 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * property_name;
5605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack = state_stack_create( strlen( fmt ) + 2 );
5607 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack == NULL )
5608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ALLOC_ERROR;
5610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5612 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_INITIAL, NULL, NULL, 0, 0 );
5613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5614 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ for( p = next_token( p, &tok ); p != NULL; p = next_token( p, &tok ) )
5615 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5616 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
5617 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( state->parser_state == STATE_PROPERTY_NAME )
5618 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5619 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ property_name = ( tok.type == 's' ) ? va_arg( args, const char * ) : NULL;
5620 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5621 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !tok.suppress )
5622 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5623 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( tok.type )
5624 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5625 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[':
5626 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.array = va_arg( args, cson_array * );
5627 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5628 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
5629 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.object = va_arg( args, cson_object * );
5630 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5631 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 's':
5632 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.string = va_arg( args, const char * );
5633 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5634 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'd':
5635 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok.len_l == 0 )
5636 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5637 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.i = va_arg( args, int );
5638 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5639 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok.len_l == 1 )
5640 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5641 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.i = va_arg( args, long );
5642 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5643 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5644 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5645 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.i = va_arg( args, cson_int_t );
5646 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5647 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5648 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'f':
5649 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.d = va_arg( args, double );
5650 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5651 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'b':
5652 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ pack_value.b = va_arg( args, int );
5653 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5654 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5655 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5656 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5657 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( state->parser_state )
5658 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5659 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_INITIAL:
5660 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_pack_initial( stack, &tok, &pack_value, &root_value );
5661 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval != 0 )
5662 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5663 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5664 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5665 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5666 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_END:
5667 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* check for trailing characters */
5668 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = ( tok.type == '\0' ) ? 0 : CSON_PACK_ARG_ERROR;
5669 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5670 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_PROPERTY_NAME:
5671 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_pack_property_name( stack, &tok, property_name );
5672 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval != 0 )
5673 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5674 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5675 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5676 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5677 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_PROPERTY_VALUE:
5678 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_pack_property_value( stack, &tok, &pack_value );
5679 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval != 0 )
5680 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5681 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5682 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5683 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5684 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_ARRAY_VALUE:
5685 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_pack_array_value( stack, &tok, &pack_value );
5686 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval != 0 )
5687 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5688 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5689 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5690 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5691 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
5692 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_INTERNAL_ERROR;
5693 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
5694 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5695 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5696 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( p == NULL )
5697 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5698 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* parse error */
5699 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ARG_ERROR;
5700 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5701 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5702 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ out:
5703 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval == 0 )
5704 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5705 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *root_valuep = root_value;
5706 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5707 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5708 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5709 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value_free( root_value );
5710 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5711 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack != NULL ) {
5712 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ free( stack->state );
5713 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ free( stack );
5714 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5715 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5716 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( retval );
5717 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5718 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5719 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int cson_pack( cson_value ** root_valuep, const char * fmt, ... )
5720 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5721 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int retval;
5722 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_list args;
5723 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5724 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_start( args, fmt );
5725 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = cson_vpack( root_valuep, fmt, args );
5726 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_end( args );
5727 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5728 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( retval );
5729 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5730 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5731 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_unpack_initial( struct state_stack * stack, struct token * tok, union unpack_value * unpack_value )
5732 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5733 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int subst = 0;
5734 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * root_value;
5735 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5736 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional || tok->alloc )
5737 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5738 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5739 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5740 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5741 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5742 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ root_value = state_stack_top( stack )->parent_value;
5743 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == '[' )
5744 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5745 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_array( root_value ) )
5746 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5747 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5748 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5749 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5750 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5751 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5752 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->arrayp = cson_value_get_array( root_value );
5753 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5754 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5755 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5756 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5757 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_END, NULL, NULL, 0, 0 );
5758 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_ARRAY_VALUE, root_value, NULL, 0, 0 );
5759 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5760 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok->type == '{' )
5761 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5762 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_object( root_value ) )
5763 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5764 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5765 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5766 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5767 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5768 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5769 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->objectp = cson_value_get_object( root_value );
5770 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5771 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5772 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5773 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5774 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_END, NULL, NULL, 0, 0 );
5775 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_NAME, root_value, NULL, 0, 0 );
5776 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5777 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5778 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5779 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5780 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5781 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5782 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( subst );
5783 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5784 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5785 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_unpack_property_name( struct state_stack * stack, struct token * tok, const char * property_name )
5786 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5787 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value;
5788 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5789 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == '}' )
5790 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5791 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5792 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5793 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( tok->type == 's' )
5794 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5795 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->suppress || tok->alloc )
5796 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5797 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5798 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5799 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5800 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5801 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ parent_value = state_stack_top( stack )->parent_value;
5802 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5803 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_VALUE, parent_value, property_name, tok->optional, 0 );
5804 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5805 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5806 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5807 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* neither property specifier nor end of object */
5808 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5809 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5810 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5811 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
5812 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5813 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5814 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int handle_unpack_value( struct state_stack * stack,
5815 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token * tok,
5816 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * value,
5817 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union unpack_value * unpack_value,
5818 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ enum parser_state new_parser_state )
5819 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5820 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int subst = 0;
5821 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
5822 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * parent_value;
5823 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unsigned int index;
5824 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int skip;
5825 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * string;
5826 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ char * astring;
5827 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ size_t len;
5828 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5829 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
5830 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ parent_value = state->parent_value;
5831 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ index = state->index;
5832 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ skip = ( parent_value == NULL ) || ( value == NULL );
5833 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5834 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( tok->type )
5835 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5836 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 's':
5837 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5838 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5839 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_string( value ) )
5840 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5841 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not a string */
5842 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5843 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5844 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5845 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5846 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5847 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ string = cson_value_get_cstr( value );
5848 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->alloc )
5849 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5850 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ len = strlen ( string );
5851 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ astring = malloc( len + 1 );
5852 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( astring == NULL )
5853 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5854 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ALLOC_ERROR );
5855 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5856 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ memcpy( astring, string, len + 1 );
5857 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->astringp = astring;
5858 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5859 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
5860 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5861 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->stringp = string;
5862 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5863 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5864 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5865 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5866 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5867 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5868 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5869 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5870 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'd':
5871 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5872 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5873 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_integer( value ) )
5874 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5875 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not an integer */
5876 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5877 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5878 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5879 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5880 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5881 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->ip = cson_value_get_integer( value );
5882 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5883 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5884 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5885 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5886 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5887 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5888 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5889 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'f':
5890 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5891 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5892 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_double( value ) )
5893 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5894 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not a float */
5895 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5896 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5897 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5898 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5899 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5900 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->dp = cson_value_get_double( value );
5901 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5902 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5903 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5904 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5905 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5906 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5907 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5908 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'b':
5909 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5910 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5911 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_bool( value ) )
5912 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5913 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not a boolean */
5914 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5915 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5916 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5917 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5918 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5919 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->bp = cson_value_get_bool( value );
5920 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5921 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5922 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5923 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5924 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5925 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5926 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5927 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'N':
5928 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5929 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5930 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_null( value ) )
5931 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5932 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not an array */
5933 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5934 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5935 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5936 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5937 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5938 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5939 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5940 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[':
5941 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5942 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5943 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_array( value ) )
5944 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5945 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not an array */
5946 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5947 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5948 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5949 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5950 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5951 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->arrayp = cson_value_get_array( value );
5952 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5953 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5954 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5955 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5956 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5957 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5958 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_ARRAY_VALUE, value, NULL, 0, 0 );
5959 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5960 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
5961 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !skip )
5962 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5963 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !cson_value_is_object( value ) )
5964 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5965 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* property value is not an object */
5966 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
5967 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5968 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5969 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !tok->suppress )
5970 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5971 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ *unpack_value->objectp = cson_value_get_object( value );
5972 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst = 1;
5973 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5974 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5975 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5976 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
5977 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, new_parser_state, parent_value, NULL, 0, index );
5978 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_PROPERTY_NAME, value, NULL, 0, 0 );
5979 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
5980 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
5981 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_INTERNAL_ERROR );
5982 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5983 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5984 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( subst );
5985 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5986 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5987 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_unpack_array_value( struct state_stack * stack, struct token * tok, union unpack_value * unpack_value )
5988 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5989 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
5990 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_array * array;
5991 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * value = NULL;
5992 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5993 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->optional )
5994 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
5995 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
5996 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
5997 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
5998 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
5999 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok->type == ']' )
6000 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6001 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_pop( stack );
6002 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6003 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( 0 );
6004 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6005 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( ( tok->type != 's' ) && tok->alloc )
6006 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6007 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
6008 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
6009 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6010 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6011 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
6012 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( state->parent_value != NULL )
6013 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6014 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* get next array value */
6015 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ array = cson_value_get_array( state->parent_value );
6016 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_array_get( array, state->index );
6017 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( value == NULL )
6018 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6019 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* index out of bounds */
6020 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
6021 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6022 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6023 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state->index++;
6024 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6025 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( handle_unpack_value( stack, tok, value, unpack_value, STATE_ARRAY_VALUE ) );
6026 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6027 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6028 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ static int on_unpack_property_value( struct state_stack * stack, struct token * tok, union unpack_value * unpack_value )
6029 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6030 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
6031 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_object * object;
6032 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ cson_value * value;
6033 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6034 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( ( tok->optional ) || ( ( tok->type != 's' ) && tok->alloc ) )
6035 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6036 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* invalid modifier */
6037 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_ARG_ERROR );
6038 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6039 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6040 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
6041 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ object = cson_value_get_object( state->parent_value );
6042 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ value = cson_object_get( object, state->property_name );
6043 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !state->property_optional && ( value == NULL ) )
6044 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6045 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* missing mandatory property */
6046 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( CSON_PACK_VALIDATION_ERROR );
6047 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6048 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6049 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( handle_unpack_value( stack, tok, value, unpack_value, STATE_PROPERTY_NAME ) );
6050 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6051 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6052 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int cson_vunpack( cson_value * root_value, const char * fmt, va_list args )
6053 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6054 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int retval = CSON_PACK_INTERNAL_ERROR;
6055 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int subst = 0;
6056 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state_stack * stack = NULL;
6057 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct state * state;
6058 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * p = fmt;
6059 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ struct token tok = { 0 };
6060 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ union unpack_value unpack_value = { 0 };
6061 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ const char * property_name;
6062 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6063 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( root_value == NULL )
6064 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6065 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ARG_ERROR;
6066 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6067 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6068 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6069 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ stack = state_stack_create( strlen( fmt ) + 2 ); /* worst case */
6070 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack == NULL )
6071 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6072 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ALLOC_ERROR;
6073 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6074 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6075 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state_stack_push( stack, STATE_INITIAL, root_value, NULL, 0, 0 );
6076 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6077 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ for( p = next_token( p, &tok ); p != NULL; p = next_token( p, &tok ) )
6078 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6079 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state = state_stack_top( stack );
6080 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( state->parser_state == STATE_PROPERTY_NAME )
6081 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6082 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ property_name = ( tok.type == 's' ) ? va_arg( args, const char * ) : NULL;
6083 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6084 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else if( !tok.suppress )
6085 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6086 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( tok.type )
6087 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6088 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '[':
6089 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.arrayp = va_arg( args, cson_array ** );
6090 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6091 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case '{':
6092 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.objectp = va_arg( args, cson_object ** );
6093 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6094 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 's':
6095 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok.alloc )
6096 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6097 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.astringp = va_arg( args, char ** );
6098 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6099 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ else
6100 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6101 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.stringp = va_arg( args, const char ** );
6102 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6103 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6104 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'd':
6105 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( tok.len_l != 2 )
6106 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6107 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /*
6108 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ * parsed values are always of type
6109 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ * cson_int_t
6110 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ */
6111 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ARG_ERROR;
6112 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6113 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.ip = va_arg( args, cson_int_t * );
6115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'f':
6117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.dp = va_arg( args, double * );
6118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case 'b':
6120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ unpack_value.bp = va_arg( args, char * );
6121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ switch( state->parser_state )
6126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_INITIAL:
6128 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_unpack_initial( stack, &tok, &unpack_value );
6129 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval < 0 )
6130 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6131 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6132 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6133 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst += retval;
6134 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6135 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_END:
6136 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* check for trailing characters */
6137 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = ( tok.type == '\0' ) ? subst : CSON_PACK_ARG_ERROR;
6138 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6139 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_PROPERTY_NAME:
6140 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_unpack_property_name( stack, &tok, property_name );
6141 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval != 0 )
6142 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6143 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6144 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6145 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6146 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_PROPERTY_VALUE:
6147 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_unpack_property_value( stack, &tok, &unpack_value );
6148 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval < 0 )
6149 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6150 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6151 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6152 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst += retval;
6153 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6154 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ case STATE_ARRAY_VALUE:
6155 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = on_unpack_array_value( stack, &tok, &unpack_value );
6156 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( retval < 0 )
6157 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6158 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6159 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6160 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ subst += retval;
6161 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ break;
6162 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ default:
6163 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_INTERNAL_ERROR;
6164 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ goto out;
6165 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6166 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6167 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( p == NULL )
6168 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6169 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* parse error */
6170 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = CSON_PACK_ARG_ERROR;
6171 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6172 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6173 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ out:
6174 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( stack != NULL ) {
6175 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ free( stack->state );
6176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ free( stack );
6177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( retval );
6180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int cson_unpack( cson_value * root_value, const char * fmt, ... )
6183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {
6184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ int retval;
6185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_list args;
6186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_start( args, fmt );
6188 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ retval = cson_vunpack( root_value, fmt, args );
6189 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ va_end( args );
6190 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
6191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ return ( retval );
6192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }
6193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ /* end file ./cson_pack.c */
5115 6194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* begin file ./cson_lists.h */
5116 6195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
/* Auto-generated from cson_list.h. Edit at your own risk! */
5117 6196 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
unsigned int cson_value_list_reserve( cson_value_list * self, unsigned int n )
5118 6197 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{
5119 6198 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if( !self ) return 0;
@@ -5389,11 +6468,11 @@
5389 6468 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_string * colName = NULL;
5390 6469 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int i = 0;
5391 6470 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int rc = 0;
5392 6471 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
cson_value * currentValue = NULL;
5393 6472 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
int const colCount = sqlite3_column_count(st);
5394 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- if( !colCount || (colCount>(int)cson_array_length_get(colNames)) ) {
6473 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ if( !colCount || (colCount>cson_array_length_get(colNames)) ) {
5395 6474 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return NULL;
5396 6475 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
5397 6476 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
rootV = cson_value_new_object();
5398 6477 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if(!rootV) return NULL;
5399 6478 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
root = cson_value_get_object(rootV);
5400 6479 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!