MCPcopy Create free account
hub / github.com/CalcProgrammer1/OpenRGB / get_ubjson_value

Method get_ubjson_value

dependencies/json/json.hpp:9659–9755  ·  view source on GitHub ↗

! @param prefix the previously read or set type prefix @return whether value creation completed */

Source from the content-addressed store, hash-verified

9657 @return whether value creation completed
9658 */
9659 bool get_ubjson_value(const char_int_type prefix)
9660 {
9661 switch (prefix)
9662 {
9663 case std::char_traits<char_type>::eof(): // EOF
9664 return unexpect_eof(input_format_t::ubjson, "value");
9665
9666 case 'T': // true
9667 return sax->boolean(true);
9668 case 'F': // false
9669 return sax->boolean(false);
9670
9671 case 'Z': // null
9672 return sax->null();
9673
9674 case 'U':
9675 {
9676 std::uint8_t number{};
9677 return get_number(input_format_t::ubjson, number) && sax->number_unsigned(number);
9678 }
9679
9680 case 'i':
9681 {
9682 std::int8_t number{};
9683 return get_number(input_format_t::ubjson, number) && sax->number_integer(number);
9684 }
9685
9686 case 'I':
9687 {
9688 std::int16_t number{};
9689 return get_number(input_format_t::ubjson, number) && sax->number_integer(number);
9690 }
9691
9692 case 'l':
9693 {
9694 std::int32_t number{};
9695 return get_number(input_format_t::ubjson, number) && sax->number_integer(number);
9696 }
9697
9698 case 'L':
9699 {
9700 std::int64_t number{};
9701 return get_number(input_format_t::ubjson, number) && sax->number_integer(number);
9702 }
9703
9704 case 'd':
9705 {
9706 float number{};
9707 return get_number(input_format_t::ubjson, number) && sax->number_float(static_cast<number_float_t>(number), "");
9708 }
9709
9710 case 'D':
9711 {
9712 double number{};
9713 return get_number(input_format_t::ubjson, number) && sax->number_float(static_cast<number_float_t>(number), "");
9714 }
9715
9716 case 'H':

Callers

nothing calls this directly

Calls 10

getFunction · 0.70
get_token_stringFunction · 0.70
createFunction · 0.70
booleanMethod · 0.45
nullMethod · 0.45
number_unsignedMethod · 0.45
number_integerMethod · 0.45
number_floatMethod · 0.45
parse_errorMethod · 0.45
stringMethod · 0.45

Tested by

no test coverage detected