33
34
35
36
37
38
39
40
41
42
43
44
45
46
..
55
56
57
58
59
60
61
62
63
64
65
66
67
68
...
368
369
370
371
372
373
374
|
return r;
}
static inline gd_stringName
gdu_intern (const char* str) {
return gdu_intern_sz(str, 0);
}
static inline gd_stringName
gdu_sym_null(void) {
gd_stringName n;
_t(stringName).empty(&n, nullptr);
return n;
}
................................................................................
static inline gd_string
gdu_str_sz (const char* str, const size_t sz) {
gd_string r = {};
if (sz == 0) _t(string).newWithUtf8Chars(&r, str);
else _t(string).newWithUtf8CharsAndLen(&r, str, sz);
return r;
}
static inline gd_string
gdu_str (const char* str) {
return gdu_str_sz(str, 0);
}
#define _gdu_intern(x) (gdu_intern_sz((x), sizeof(x)-1))
................................................................................
gd_variant v = gd_variant_of_dictionary(*dict);
_withSym(keyName, key, {
uint8_t ok = false;
_t(variant).setNamed(&v, &keyName, val, &ok);
});
}
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
..
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
...
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
|
return r;
}
static inline gd_stringName
gdu_intern (const char* str) {
return gdu_intern_sz(str, 0);
}
static inline gd_stringName
gdu_internp (pstr p) {
return gdu_intern_sz(p.v, p.sz);
}
static inline gd_stringName
gdu_sym_null(void) {
gd_stringName n;
_t(stringName).empty(&n, nullptr);
return n;
}
................................................................................
static inline gd_string
gdu_str_sz (const char* str, const size_t sz) {
gd_string r = {};
if (sz == 0) _t(string).newWithUtf8Chars(&r, str);
else _t(string).newWithUtf8CharsAndLen(&r, str, sz);
return r;
}
static inline gd_string
gdu_pstr (pstr p) {
return gdu_str_sz(p.v, p.sz);
}
static inline gd_string
gdu_str (const char* str) {
return gdu_str_sz(str, 0);
}
#define _gdu_intern(x) (gdu_intern_sz((x), sizeof(x)-1))
................................................................................
gd_variant v = gd_variant_of_dictionary(*dict);
_withSym(keyName, key, {
uint8_t ok = false;
_t(variant).setNamed(&v, &keyName, val, &ok);
});
}
static inline void
gdu_setKey_str
( gd_dictionary* const dict,
pstr const key,
pstr const val
) {
gd_string s = gdu_str_sz(val.v, val.sz);
gd_variant v = gd_variant_of_string(s);
gdu_setKey(dict, key, &v);
_t(string).dtor(&s);
}
|