JR_BOOL_KV

Table of Contents

JR_BOOL_KV

Description

Read a boolean key-value pair if key matches.

Parameters

NameDirectionDescription
siin,outJSON stream iterator to read from.
kinExpected key name (C-string).
boutBoolean variable to store the value.

Usage example (from documentation)

  JR_BOOL_KV(si, "enabled", flag);

Success

b contains value if key matched

Failure

No-op if key does not match

Usage example (Cross-references)

    JR_OBJ(json, {
    JR_STR_KV(json, "name", enum_name);
    JR_BOOL_KV(json, "to_from_str", to_from_str);
    
    JR_OBJ_KV(json, "invalid_enum", {
    
    JR_OBJ(si, {
    JR_BOOL_KV(si, "enabled", enabled);
    JR_BOOL_KV(si, "visible", visible);
    });
    JR_OBJ(si, {
    JR_BOOL_KV(si, "enabled", enabled);
    JR_BOOL_KV(si, "visible", visible);
    });
    JR_STR_KV(si, "name", person.name);
    JR_INT_KV(si, "age", person.age);
    JR_BOOL_KV(si, "is_active", person.is_active);
    JR_FLT_KV(si, "salary", person.salary);
    });
    
    JR_OBJ(si, {
    JR_BOOL_KV(si, "debug_mode", config.debug_mode);
    JR_INT_KV(si, "timeout", config.timeout);
    JR_STR_KV(si, "log_level", config.log_level);
    JR_STR_KV(si, "email", data.user.email);
    });
    JR_BOOL_KV(si, "active", data.active);
    });
    JR_INT_KV(si, "int_zero", obj.int_zero);
    JR_FLT_KV(si, "float_zero", obj.float_zero);
    JR_BOOL_KV(si, "bool_false", obj.bool_false);
    });
    JR_STR_KV(si, "name", obj.name);
    JR_INT_KV(si, "value", obj.value);
    JR_BOOL_KV(si, "flag", obj.flag);
    });
    JR_INT_KV(si, "count", parsed.count);
    JR_FLT_KV(si, "temperature", parsed.temperature);
    JR_BOOL_KV(si, "enabled", parsed.enabled);
    JR_STR_KV(si, "message", parsed.message);
    });
    StrIter si = StrIterFromStr(json);
    JR_OBJ(si, {
    JR_BOOL_KV(si, "flag1", parsed.flag1);
    JR_BOOL_KV(si, "flag2", parsed.flag2);
    JR_BOOL_KV(si, "flag3", parsed.flag3);
    JR_OBJ(si, {
    JR_BOOL_KV(si, "flag1", parsed.flag1);
    JR_BOOL_KV(si, "flag2", parsed.flag2);
    JR_BOOL_KV(si, "flag3", parsed.flag3);
    JR_BOOL_KV(si, "flag4", parsed.flag4);
    JR_BOOL_KV(si, "flag1", parsed.flag1);
    JR_BOOL_KV(si, "flag2", parsed.flag2);
    JR_BOOL_KV(si, "flag3", parsed.flag3);
    JR_BOOL_KV(si, "flag4", parsed.flag4);
    });
    JR_BOOL_KV(si, "flag2", parsed.flag2);
    JR_BOOL_KV(si, "flag3", parsed.flag3);
    JR_BOOL_KV(si, "flag4", parsed.flag4);
    });
    JR_STR_KV(si, "name", parsed_person.name);
    JR_INT_KV(si, "age", parsed_person.age);
    JR_BOOL_KV(si, "is_active", parsed_person.is_active);
    JR_FLT_KV(si, "salary", parsed_person.salary);
    });
    JR_STR_KV(si, "name", parsed.user.name);
    JR_INT_KV(si, "age", parsed.user.age);
    JR_BOOL_KV(si, "is_active", parsed.user.is_active);
    JR_FLT_KV(si, "salary", parsed.user.salary);
    });
    });
    JR_OBJ_KV(si, "config", {
    JR_BOOL_KV(si, "debug_mode", parsed.config.debug_mode);
    JR_INT_KV(si, "timeout", parsed.config.timeout);
    JR_STR_KV(si, "log_level", parsed.config.log_level);
    JR_INT_KV(si, "zero", parsed.zero);
    JR_FLT_KV(si, "zero_float", parsed.zero_float);
    JR_BOOL_KV(si, "true_val", parsed.true_val);
    JR_BOOL_KV(si, "false_val", parsed.false_val);
    });
    JR_FLT_KV(si, "zero_float", parsed.zero_float);
    JR_BOOL_KV(si, "true_val", parsed.true_val);
    JR_BOOL_KV(si, "false_val", parsed.false_val);
    });
    JR_INT_KV(si, "id", data.id);
    JR_STR_KV(si, "name", data.name);
    JR_BOOL_KV(si, "active", data.active);
    JR_FLT_KV(si, "score", data.score);
    });
    
    JR_OBJ(si, {
    JR_BOOL_KV(si, "status", response.status);
    JR_STR_KV(si, "message", response.message);
    JR_STR_KV(si, "nearest_neighbor_function_name", sym.function_name);
    JR_STR_KV(si, "nearest_neighbor_sha_256_hash", sym.sha256);
    JR_BOOL_KV(si, "nearest_neighbor_debug", sym.debug);
    JR_STR_KV(si, "nearest_neighbor_function_name_mangled", sym.function_mangled_name);
    });
    
    JR_OBJ(si, {
    JR_BOOL_KV(si, "status", response.status);
    JR_STR_KV(si, "message", response.message);
    JR_STR_KV(si, "nearest_neighbor_function_name", sym.function_name);
    JR_STR_KV(si, "nearest_neighbor_sha_256_hash", sym.sha256);
    JR_BOOL_KV(si, "nearest_neighbor_debug", sym.debug);
    JR_STR_KV(si, "nearest_neighbor_function_name_mangled", sym.function_mangled_name);
    });
    
    JR_OBJ(si, {
    JR_BOOL_KV(si, "status", response.status);
    JR_STR_KV(si, "message", response.message);
    JR_STR_KV(si, "nearest_neighbor_function_name", sym.function_name);
    JR_STR_KV(si, "nearest_neighbor_sha_256_hash", sym.sha256);
    JR_BOOL_KV(si, "nearest_neighbor_debug", sym.debug);
    JR_STR_KV(si, "nearest_neighbor_function_name_mangled", sym.function_mangled_name);
    });

Share :

Related Posts

JR_STR_KV

JR_STR_KV Description Read a string key-value pair if key matches.

Read More

JR_FLT_KV

JR_FLT_KV Description Read a float key-value pair if key matches.

Read More

JR_FLT

JR_FLT Description Read a JSON float value from stream and assign to target.

Read More