JW_INT_KV
- Macro
- August 22, 2025
Table of Contents
JW_INT_KV
JW_INT_KV
Description
Write a key and integer value to a JSON object.
Parameters
Name | Direction | Description |
---|---|---|
j | in,out | The target string to append to. |
k | in | Key name. |
i | in | Integer value. |
Usage example (from documentation)
JW_INT_KV(json, "count", 5);
Success
Appends a key-value integer pair
Failure
Does not return on failure
Usage example (Cross-references)
JW_OBJ(json, {
JW_INT_KV(json, "count", count);
JW_FLT_KV(json, "score", score);
JW_INT_KV(json, "year", year);
JW_INT_KV(json, "count", count);
JW_FLT_KV(json, "score", score);
JW_INT_KV(json, "year", year);
});
JW_OBJ(json, {
JW_INT_KV(json, "id", person.id);
JW_STR_KV(json, "name", person.name);
JW_INT_KV(json, "age", person.age);
JW_INT_KV(json, "id", person.id);
JW_STR_KV(json, "name", person.name);
JW_INT_KV(json, "age", person.age);
JW_BOOL_KV(json, "is_active", person.is_active);
JW_FLT_KV(json, "salary", person.salary);
JW_OBJ(json, {
JW_BOOL_KV(json, "debug_mode", config.debug_mode);
JW_INT_KV(json, "timeout", config.timeout);
JW_STR_KV(json, "log_level", config.log_level);
});
JW_OBJ(json, {
JW_INT_KV(json, "id", product.id);
JW_STR_KV(json, "name", product.name);
JW_FLT_KV(json, "price", product.price);
JW_OBJ(json, {
JW_INT_KV(json, "temp", temp);
JW_FLT_KV(json, "balance", balance);
JW_FLT_KV(json, "delta", delta);
JW_OBJ(json, {
JW_INT_KV(json, "big_int", big_int);
JW_FLT_KV(json, "big_float", big_float);
JW_FLT_KV(json, "small_float", small_float);
JW_OBJ(json, {
JW_INT_KV(json, "int_zero", int_zero);
JW_FLT_KV(json, "float_zero", float_zero);
JW_BOOL_KV(json, "bool_false", bool_false);
}
);
JW_OBJ_KV(json, "filled_obj", { JW_INT_KV(json, "x", x_value); });
JW_ARR_KV(json, "empty_arr", empty_arr, item, { JW_INT(json, item); });
JW_ARR_KV(json, "filled_arr", filled_arr, item, { JW_INT(json, item); });
JW_OBJ(json, {
JW_INT_KV(json, "max_int", max_int);
JW_INT_KV(json, "min_int", min_int);
JW_INT_KV(json, "one", one);
JW_OBJ(json, {
JW_INT_KV(json, "max_int", max_int);
JW_INT_KV(json, "min_int", min_int);
JW_INT_KV(json, "one", one);
JW_INT_KV(json, "minus_one", minus_one);
JW_INT_KV(json, "max_int", max_int);
JW_INT_KV(json, "min_int", min_int);
JW_INT_KV(json, "one", one);
JW_INT_KV(json, "minus_one", minus_one);
});
JW_INT_KV(json, "min_int", min_int);
JW_INT_KV(json, "one", one);
JW_INT_KV(json, "minus_one", minus_one);
});
// Single integer
i32 single_int = 42;
JW_OBJ(json1, { JW_INT_KV(json1, "value", single_int); });
// Single string
JW_OBJ(json, {
JW_OBJ_KV(json, "user", {
JW_INT_KV(json, "id", data.user.id);
JW_OBJ_KV(json, "profile", {
JW_STR_KV(json, "name", data.user.profile.name);
JW_OBJ_KV(json, "profile", {
JW_STR_KV(json, "name", data.user.profile.name);
JW_INT_KV(json, "age", data.user.profile.age);
});
});
JW_OBJ_KV(json, "engineering", {
JW_STR_KV(json, "head", data.company.departments.engineering.head);
JW_INT_KV(json, "count", data.company.departments.engineering.count);
JW_FLT_KV(json, "budget", data.company.departments.engineering.budget);
});
JW_OBJ_KV(json, target_key.data, {
JW_FLT_KV(json, "distance", s->distance);
JW_INT_KV(json, "nearest_neighbor_analysis_id", s->analysis_id);
JW_INT_KV(json, "nearest_neighbor_binary_id", s->binary_id);
JW_STR_KV(json, "nearest_neighbor_analysis_name", s->analysis_name);
JW_FLT_KV(json, "distance", s->distance);
JW_INT_KV(json, "nearest_neighbor_analysis_id", s->analysis_id);
JW_INT_KV(json, "nearest_neighbor_binary_id", s->binary_id);
JW_STR_KV(json, "nearest_neighbor_analysis_name", s->analysis_name);
JW_STR_KV(json, "nearest_neighbor_function_name", s->function_name);
JW_ARR_KV(json, "functions", functions, func, {
JW_OBJ(json, {
JW_INT_KV(json, "id", func.id);
JW_STR_KV(json, "name", func.name);
JW_INT_KV(json, "size", func.size);
JW_INT_KV(json, "id", func.id);
JW_STR_KV(json, "name", func.name);
JW_INT_KV(json, "size", func.size);
JW_INT_KV(json, "vaddr", func.vaddr);
});
JW_STR_KV(json, "name", func.name);
JW_INT_KV(json, "size", func.size);
JW_INT_KV(json, "vaddr", func.vaddr);
});
});
JW_OBJ(json, {
JW_INT_KV(json, "binary_id", result.binary_id);
JW_STR_KV(json, "binary_name", result.binary_name);
JW_INT_KV(json, "analysis_id", result.analysis_id);
JW_INT_KV(json, "binary_id", result.binary_id);
JW_STR_KV(json, "binary_name", result.binary_name);
JW_INT_KV(json, "analysis_id", result.analysis_id);
JW_STR_KV(json, "sha256", result.sha256);
JW_ARR_KV(json, "tags", result.tags, tag, { JW_STR(json, tag); });
JW_ARR_KV(json, "tags", result.tags, tag, { JW_STR(json, tag); });
JW_STR_KV(json, "created_at", result.created_at);
JW_INT_KV(json, "model_id", result.model_id);
JW_STR_KV(json, "model_name", result.model_name);
JW_STR_KV(json, "owned_by", result.owned_by);
JW_OBJ_KV(json, "level3", {
JW_STR_KV(json, "message", deep_message);
JW_INT_KV(json, "value", 42);
});
JW_BOOL_KV(json, "flag", true);
- In
RoundTrip.c:101
:
Str json = StrInit();
JW_OBJ(json, {
JW_INT_KV(json, "count", original.count);
JW_FLT_KV(json, "temperature", original.temperature);
JW_BOOL_KV(json, "enabled", original.enabled);
- In
RoundTrip.c:173
:
Str json = StrInit();
JW_OBJ(json, {
JW_INT_KV(json, "big_int", original.big_int);
JW_INT_KV(json, "negative_int", original.negative_int);
JW_INT_KV(json, "zero_int", original.zero_int);
- In
RoundTrip.c:174
:
JW_OBJ(json, {
JW_INT_KV(json, "big_int", original.big_int);
JW_INT_KV(json, "negative_int", original.negative_int);
JW_INT_KV(json, "zero_int", original.zero_int);
JW_FLT_KV(json, "precise_float", original.precise_float);
- In
RoundTrip.c:175
:
JW_INT_KV(json, "big_int", original.big_int);
JW_INT_KV(json, "negative_int", original.negative_int);
JW_INT_KV(json, "zero_int", original.zero_int);
JW_FLT_KV(json, "precise_float", original.precise_float);
JW_FLT_KV(json, "small_float", original.small_float);
- In
RoundTrip.c:461
:
JW_OBJ(json, {
JW_OBJ_KV(json, "user", {
JW_INT_KV(json, "id", original_person.id);
JW_STR_KV(json, "name", original_person.name);
JW_INT_KV(json, "age", original_person.age);
- In
RoundTrip.c:463
:
JW_INT_KV(json, "id", original_person.id);
JW_STR_KV(json, "name", original_person.name);
JW_INT_KV(json, "age", original_person.age);
JW_BOOL_KV(json, "is_active", original_person.is_active);
JW_FLT_KV(json, "salary", original_person.salary);
- In
RoundTrip.c:540
:
JW_OBJ(json, {
JW_OBJ_KV(json, "user", {
JW_INT_KV(json, "id", original.user.id);
JW_STR_KV(json, "name", original.user.name);
JW_INT_KV(json, "age", original.user.age);
- In
RoundTrip.c:542
:
JW_INT_KV(json, "id", original.user.id);
JW_STR_KV(json, "name", original.user.name);
JW_INT_KV(json, "age", original.user.age);
JW_BOOL_KV(json, "is_active", original.user.is_active);
JW_FLT_KV(json, "salary", original.user.salary);
- In
RoundTrip.c:548
:
JW_OBJ_KV(json, "config", {
JW_BOOL_KV(json, "debug_mode", original.config.debug_mode);
JW_INT_KV(json, "timeout", original.config.timeout);
JW_STR_KV(json, "log_level", original.config.log_level);
JW_ARR_KV(json, "features", original.config.features, feature, { JW_STR(json, feature); });
- In
RoundTrip.c:735
:
Str json = StrInit();
JW_OBJ(json, {
JW_INT_KV(json, "max_int", original.max_int);
JW_INT_KV(json, "min_int", original.min_int);
JW_INT_KV(json, "zero", original.zero);
- In
RoundTrip.c:736
:
JW_OBJ(json, {
JW_INT_KV(json, "max_int", original.max_int);
JW_INT_KV(json, "min_int", original.min_int);
JW_INT_KV(json, "zero", original.zero);
JW_FLT_KV(json, "zero_float", original.zero_float);
- In
RoundTrip.c:737
:
JW_INT_KV(json, "max_int", original.max_int);
JW_INT_KV(json, "min_int", original.min_int);
JW_INT_KV(json, "zero", original.zero);
JW_FLT_KV(json, "zero_float", original.zero_float);
JW_BOOL_KV(json, "true_val", original.true_val);