|
template<typename ParsePolicy , typename String , auto OptionMutable, auto OptionImmutable> |
using | apply_mutable_policy = std::conditional_t< ParsePolicy::allow_temporarily_mutating_buffer, std::conditional_t< is_mutable_string_v< String >, apply_policy_option_t< ParsePolicy, OptionMutable >, apply_policy_option_t< ParsePolicy, OptionImmutable > >, std::conditional_t<(is_rvalue_string< String > and is_mutable_string_v< String >), apply_policy_option_t< ParsePolicy, OptionMutable >, apply_policy_option_t< ParsePolicy, OptionImmutable > > > |
|
template<typename ParsePolicy , auto Option> |
using | apply_policy_option_t = typename ParsePolicy::template SetPolicyOptions< Option > |
|
template<typename ParsePolicy , typename String , auto Option> |
using | apply_zstring_policy_option_t = std::conditional_t< is_zero_terminated_string_v< daw::remove_cvref_t< String > >, apply_policy_option_t< ParsePolicy, Option >, ParsePolicy > |
|
template<typename T > |
using | base_int_type_impl = std::underlying_type< T > |
|
template<typename T > |
using | base_int_type_t = typename std::conditional_t< std::is_enum_v< T >, base_int_type_impl< T >, daw::traits::identity< T > >::type |
|
template<bool Nullable, typename Constructor , typename... Args> |
using | construction_result = std::conditional_t< Nullable, std::conditional_t< std::is_invocable_v< Constructor, Args... >, std::conditional_t< std::is_invocable_v< Constructor >, std::invoke_result< Constructor >, traits::identity< nullable_constructor_cannot_be_invoked< Constructor > > >, traits::identity< nullable_constructor_cannot_be_invoked< Constructor, Args... > > >, std::conditional_t< std::is_invocable_v< Constructor, Args... >, std::invoke_result< Constructor, Args... >, traits::identity< constructor_cannot_be_invoked< Constructor, Args... > > > > |
|
template<typename JsonMember , JSONNAMETYPE NewName, bool Cond> |
using | copy_name_when = std::conditional_t< Cond, typename JsonMember::template with_name< NewName >, JsonMember > |
|
template<typename JsonMember , JSONNAMETYPE NewName> |
using | copy_name_when_noname = copy_name_when< JsonMember, NewName, is_no_name_v< JsonMember > > |
|
template<typename JsonMember > |
using | dependent_member_t = typename JsonMember::dependent_member |
|
template<typename T > |
using | dereferenced_t = typename deref_t_impl::deref_type_impl< T >::type |
|
template<typename Container , typename Value > |
using | detect_insert_end = decltype(std::declval< Container & >().insert(std::end(std::declval< Container & >()), std::declval< Value >())) |
|
template<typename Container , typename Value > |
using | detect_push_back = decltype(std::declval< Container & >().push_back(std::declval< Value >())) |
|
template<typename T > |
using | detected_underlying_nullable_type = std::remove_reference_t< daw::detected_t< underlying_nullable_type, T > > |
|
template<JsonNullable Nullable, typename Tuple > |
using | determine_tuple_element_types = std::conditional_t< std::disjunction_v< daw::not_trait< is_nullable_json_value< Nullable > >, daw::not_trait< is_nullable_type< Tuple > > >, typename tuple_types_list< Tuple >::type, std::conditional_t< is_nullable_type_v< Tuple >, typename tuple_types_list< detected_underlying_nullable_type< Tuple > >::type, cannot_deduce_tuple_types_list< Nullable, Tuple > > > |
|
template<JsonNullable Nullable, typename Variant > |
using | determine_variant_element_types = std::conditional_t< std::disjunction_v< daw::not_trait< is_nullable_json_value< Nullable > >, daw::not_trait< is_nullable_type< Variant > > >, variant_alternatives_list< Variant >, std::conditional_t< is_nullable_type_v< Variant >, variant_alternatives_list< detected_underlying_nullable_type< Variant > >, cannot_deduce_variant_element_types< Nullable, Variant > > > |
|
template<typename T > |
using | element_type_t = typename T::element_type |
|
template<typename T > |
using | ensure_mapped_t = typename ensure_mapped< T >::type |
|
template<auto Value, auto... Values> |
using | equal_to_one_of = std::bool_constant<((Value==Values) or ...)> |
|
template<typename T > |
using | force_aggregate_construction_test = typename json_data_contract< T >::force_aggregate_construction |
|
template<typename T > |
using | force_aggregate_construction_test2 = decltype(T::force_aggregate_construction) |
|
template<typename JsonMember > |
using | from_json_result_t = json_result< json_deduced_type< JsonMember > > |
|
template<typename T > |
using | from_string_test = decltype(from_string(std::declval< daw::tag_t< T > >(), std::declval< std::string_view >())) |
|
template<typename Allocator > |
using | has_allocate_test = decltype(std::declval< Allocator & >().allocate(size_t{ 1 })) |
|
template<typename Allocator > |
using | has_deallocate_test = decltype(std::declval< Allocator & >().deallocate(static_cast< void * >(nullptr), size_t{ 1 })) |
|
template<typename T > |
using | has_deduced_type_mapping = std::bool_constant< json_deduced_type_map< T >::type_map_found > |
|
template<typename T > |
using | has_element_type = daw::is_detected< element_type_t, T > |
|
template<typename T > |
using | has_empty_member_test = decltype(std::declval< T >().empty()) |
|
template<typename T > |
using | has_exact_mapping_trait_in_class_map = typename json_data_contract< T >::exact_class_mapping |
|
template<typename T > |
using | has_ignore_unknown_members_trait_in_class_map = typename json_data_contract< T >::ignore_unknown_members |
|
template<typename T > |
using | has_json_data_constract_constructor_test = decltype(decltype(std::declval< json_data_contract_trait_t< T > >)::constructor) |
|
template<typename T > |
using | has_json_data_contract_trait = not_trait< std::is_same< missing_json_data_contract_for< T >, json_data_contract_trait_t< T > > > |
|
template<typename T > |
using | has_json_deduced_type = daw::not_trait< std::is_same< json_deduced_type< T >, missing_json_data_contract_for< T > > > |
|
template<typename T > |
using | has_json_link_quick_map = decltype(json_link_quick_map< T >()) |
|
template<typename T , typename U > |
using | has_lshift_test = decltype(operator<<(std::declval< T & >(), std::declval< U const & >())) |
|
template<typename T > |
using | has_op_bool_test = decltype(static_cast< bool >(std::declval< T >())) |
|
template<typename T > |
using | has_op_star_test = decltype(*std::declval< T >()) |
|
template<typename T , typename U > |
using | has_rshift_test = decltype(operator>>(std::declval< T & >(), std::declval< U const & >())) |
|
template<typename T > |
using | is_a_json_tagged_variant = daw::is_detected< is_a_json_tagged_variant_test, T > |
|
template<typename T > |
using | is_a_json_tagged_variant_test = typename T::i_am_a_json_tagged_variant |
|
template<typename T > |
using | is_a_json_type = std::bool_constant< daw::is_detected_v< json_type_t, T > > |
|
template<typename T > |
using | is_an_ordered_member = daw::is_detected< ordered_member_t, T > |
|
template<typename AssociativeContainer > |
using | is_associative_container = std::conjunction< is_container< AssociativeContainer >, daw::is_detected< container_detect::container_key_type, AssociativeContainer >, daw::is_detected< container_detect::container_mapped_type, AssociativeContainer > > |
|
template<typename T > |
using | is_container = std::conjunction< daw::is_detected< container_detect::container_value_type, T >, daw::is_detected< container_detect::container_begin_type, T >, daw::is_detected< container_detect::container_end_type, T > > |
|
template<typename Container > |
using | is_container_opted_into_json_iostreams = is_opted_into_json_iostreams< typename Container::value_type > |
|
template<typename T > |
using | is_dereferenceable = daw::not_trait< std::is_same< dereferenced_t< T >, deref_t_impl::unable_to_dereference< T > > > |
|
template<typename JsonType > |
using | is_json_nullable = std::bool_constant< JsonType::expected_type==JsonParseTypes::Null > |
|
template<typename JsonMember > |
using | is_no_name = std::bool_constant<(JsonMember::name==no_name_sv)> |
|
template<JsonNullable nullable> |
using | is_nullable_json_value = std::bool_constant< nullable !=JsonNullable::MustExist > |
|
template<typename T > |
using | is_nullable_type = daw::is_detected< underlying_nullable_type, T > |
|
template<typename T > |
using | is_opted_into_json_iostreams = typename json_data_contract< T >::opt_into_iostreams |
|
template<typename String > |
using | is_string = std::conjunction< is_container< String >, container_detect::is_value_type_char< String > > |
|
template<typename T > |
using | is_string_view_like = std::conjunction< daw::is_detected< is_string_like_impl::has_data_test, T >, daw::is_detected< is_string_like_impl::has_size_test, T > > |
|
template<typename T > |
using | is_submember_tagged_variant_t = typename json_data_contract< T >::type::i_am_a_submember_tagged_variant |
|
template<typename T > |
using | is_tuple = daw::is_detected< json_details::tuple_test, T > |
| Detect if T follows the tuple protocol. More...
|
|
template<typename T > |
using | is_vector = std::bool_constant< vector_detect::vector_test< T >::value > |
|
template<typename JsonMember > |
using | json_base_type = typename JsonMember::base_type |
|
template<typename T , typename Default > |
using | json_class_constructor_t = daw::detected_or_t< Default, json_class_constructor_t_impl, T > |
|
template<typename T > |
using | json_class_constructor_t_impl = typename json_data_contract< T >::constructor |
|
template<typename JsonType > |
using | json_class_map_type_t = typename json_class_map_type< JsonType >::type |
|
template<typename JsonType > |
using | json_class_map_type_test = typename JsonType::json_member |
|
template<typename Constructor , typename... Members> |
using | json_class_parse_result_impl = daw::detected_t< json_class_parse_result_impl2, Constructor, Members... > |
|
template<typename Constructor , typename... Members> |
using | json_class_parse_result_impl2 = decltype(Constructor{ }(std::declval< typename Members::parse_to_t && >()...)) |
|
template<typename Constructor , typename... Members> |
using | json_class_parse_result_t = daw::remove_cvref_t< json_class_parse_result_impl< Constructor, Members... > > |
|
template<typename T > |
using | json_data_contract_constructor = json_data_contract_constructor_impl< T, daw::is_detected< json_data_contract_trait_t, T >::value, daw::is_detected< has_json_data_constract_constructor_test, T >::value > |
|
template<typename T > |
using | json_data_contract_constructor_t = typename json_data_contract_constructor< T >::type |
|
template<typename T > |
using | json_deduced_type = typename json_type_deducer< T, is_an_ordered_member_v< T >, has_json_data_contract_trait_v< T >, json_details::is_a_json_type_v< T >, has_json_link_quick_map_v< T >, is_container_v< T > >::type |
|
template<typename T > |
using | json_link_quick_map_t = typename decltype(json_link_quick_map< T >())::mapped_type |
|
template<typename T > |
using | json_map_alias_test = typename json_data_contract_trait_t< T >::i_am_a_json_map_alias |
|
template<typename T > |
using | json_member_constructor_t = typename T::constructor_t |
|
template<typename T > |
using | json_member_parse_to_t = typename T::parse_to_t |
|
using | json_options_t = std::uint32_t |
|
template<typename T > |
using | json_parser_to_json_data_t = decltype(json_data_contract< T >::to_json_data(std::declval< T & >())) |
|
template<typename JsonMember > |
using | json_result = typename JsonMember::parse_to_t |
|
template<typename JsonMember > |
using | json_tuple_member_wrapper = std::conditional_t< is_an_ordered_member_v< JsonMember >, JsonMember, json_deduced_type< JsonMember > > |
|
template<typename T > |
using | json_type_t = typename T::i_am_a_json_type |
|
template<JsonRangeCheck RangeCheck, typename Unsigned , typename MaxArithUnsigned > |
using | max_unsigned_t = std::conditional_t< std::disjunction< daw::is_integral< Unsigned >, std::is_enum< Unsigned > >::value, std::conditional_t<(sizeof(Unsigned) > sizeof(MaxArithUnsigned)), Unsigned, MaxArithUnsigned >, Unsigned > |
|
template<typename T > |
using | ordered_member_subtype_t = typename daw::detected_or_t< T, ordered_member_subtype_test, T > |
|
template<typename T > |
using | ordered_member_subtype_test = typename T::json_member |
|
template<typename T > |
using | ordered_member_t = typename T::i_am_an_ordered_member |
|
template<typename T > |
using | parse_to_t_test = typename T::parse_to_t |
|
using | policy_list = typename option_list_impl< ExecModeTypes, ZeroTerminatedString, PolicyCommentTypes, CheckedParseMode, AllowEscapedNames, IEEE754Precise, ForceFullNameCheck, MinifiedDocument, UseExactMappingsByDefault, TemporarilyMutateBuffer, MustVerifyEndOfDataIsValid, ExcludeSpecialEscapes, ExpectLongStrings >::type |
|
template<typename JsonMember > |
using | switcher_t = typename JsonMember::switcher |
|
template<typename T > |
using | tuple_test = typename tuple_elements_pack< T >::type |
|
template<typename T > |
using | underlying_nullable_type = decltype(*std::declval< T >()) |
|
template<typename T , JsonNullable Nullable> |
using | unwrapped_t = typename std::conditional_t< is_nullable_json_value_v< Nullable >, unwrapped_impl::unwrapped_t_impl< T >, T > |
|
template<typename JsonMember > |
using | without_name = typename JsonMember::without_name |
|
|
template<typename T > |
constexpr daw::remove_cvref_t< T > | as_copy (T &&value) |
|
template<bool is_unchecked_input> |
constexpr UInt16 | byte_from_nibbles (char const *&first) |
|
template<typename Value , typename Constructor , typename ParseState , typename... Args> |
static constexpr DAW_ATTRIB_FLATINLINE auto | construct_value (template_params< Value, Constructor >, ParseState &parse_state, Args &&...args) |
|
template<typename Value , typename Constructor , typename ParseState , typename... Args> |
static constexpr DAW_ATTRIB_FLATINLINE auto | construct_value_tp (ParseState &parse_state, fwd_pack< Args... > &&tp_args) |
|
template<typename Predicate > |
constexpr DAW_ATTRIB_FLATINLINE std::int32_t | count_4digits (char const *first, Predicate pred) |
|
template<typename Predicate > |
constexpr DAW_ATTRIB_FLATINLINE std::int32_t | count_8digits (char const *first, Predicate pred) |
|
template<typename CharT > |
constexpr DAW_ATTRIB_FLATTEN CharT * | count_digits (CharT *first, CharT *last) |
|
template<typename ParseState , typename Appender > |
static constexpr void | decode_utf16 (ParseState &parse_state, Appender &app) |
|
template<typename ParseState > |
static constexpr char * | decode_utf16 (ParseState &parse_state, char *it) |
|
template<std::size_t , typename JsonMember , typename , typename OutputIterator , typename TpArgs , typename Value , typename VisitedMembers , std::enable_if_t< not has_dependent_member_v< JsonMember >, std::nullptr_t > = nullptr> |
constexpr DAW_ATTRIB_INLINE void | dependent_member_to_json_str (bool &, OutputIterator const &, TpArgs const &, Value const &, VisitedMembers const &) |
|
template<std::size_t pos, typename JsonMember , typename NamePack , typename OutputIterator , json_options_t SerializationOptions, typename TpArgs , typename Value , typename VisitedMembers , std::enable_if_t< has_dependent_member_v< JsonMember >, std::nullptr_t > = nullptr> |
constexpr void | dependent_member_to_json_str (bool &is_first, serialization_policy< OutputIterator, SerializationOptions > it, TpArgs const &args, Value const &v, VisitedMembers &visited_members) |
|
template<typename... MemberNames> |
DAW_CONSTEVAL bool | do_hashes_collide () |
|
template<std::size_t pos, AllMembersMustExist must_exist, bool from_start = false, std::size_t N, typename ParseState , bool B, typename CharT > |
constexpr std::pair< ParseState, bool > | find_class_member (ParseState &parse_state, locations_info_t< N, CharT, B > &locations, bool is_nullable, daw::string_view member_name) |
|
template<typename JsonMember , typename ParseState > |
constexpr auto | find_index (ParseState parse_state) |
|
template<JsonBaseParseTypes PT> |
constexpr std::size_t | find_json_element (std::initializer_list< JsonBaseParseTypes > pts) |
|
std::ptrdiff_t | find_lsb_set (runtime_exec_tag, UInt32 value) |
|
template<typename ParsePolicy , typename String > |
constexpr std::pair< bool, ParsePolicy > | find_range (String &&str, daw::string_view start_path) |
|
template<typename ParsePolicy , typename String , typename Allocator > |
constexpr auto | find_range (String &&str, daw::string_view start_path, Allocator &alloc) |
|
template<typename ParseState > |
constexpr bool | find_range2 (ParseState &parse_state, daw::string_view path) |
|
template<typename Policy , typename Result = Policy> |
constexpr Result | get_bits_for (json_options_t value) |
|
template<typename Option , typename Result = Option, typename... OptionList> |
constexpr Result | get_bits_for (JsonOptionList< OptionList... >, json_options_t value) |
|
template<typename... Ts> |
constexpr std::conditional_t< std::conjunction< has_json_deduced_type< Ts >... >::value, json_variant_type_list< json_deduced_type< Ts >... >, missing_default_type_mapping< json_deduced_type< Ts >... > > | get_variant_type_list (std::variant< Ts... > const *) |
|
template<typename T > |
constexpr unknown_variant_type< T > | get_variant_type_list (T const *) |
|
template<typename Handler > |
constexpr handler_result_holder | handle_on_array_end (Handler &&handler) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_array_start (Handler &&handler, basic_json_value< ParseState > jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_bool (Handler &&handler, basic_json_value< ParseState > jv) |
|
template<typename Handler > |
constexpr handler_result_holder | handle_on_class_end (Handler &&handler) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_class_start (Handler &&handler, basic_json_value< ParseState > jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_error (Handler &&handler, basic_json_value< ParseState > jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_null (Handler &&handler, basic_json_value< ParseState > &jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_number (Handler &&handler, basic_json_value< ParseState > &jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_string (Handler &&handler, basic_json_value< ParseState > &jv) |
|
template<typename Handler , typename ParseState > |
constexpr handler_result_holder | handle_on_value (Handler &&handler, basic_json_pair< ParseState > p) |
|
template<typename T > |
constexpr auto | has_value (T const &v) -> std::enable_if_t< is_readable_v< T >, bool > |
|
constexpr DAW_ATTRIB_INLINE bool | is_escaped (char const *ptr, char const *min_ptr) |
|
static constexpr bool | is_made_of_eight_digits_cx (const char *ptr) |
|
template<typename T > |
constexpr bool | is_null (std::optional< T > const &v) |
|
template<typename T > |
constexpr bool | is_null (T const &) |
|
template<typename Key , typename Value > |
constexpr Key const & | json_get_key (std::pair< Key, Value > const &kv) |
|
template<typename Key , typename Value > |
constexpr Value const & | json_get_value (std::pair< Key, Value > const &kv) |
|
template<typename T > |
constexpr auto | json_link_quick_map () |
|
template<typename... OptionList, typename... Options> |
constexpr json_options_t | json_option (JsonOptionList< OptionList... >, Options... options) |
|
constexpr bool | json_path_compare (daw::string_view json_path_item, daw::string_view member_name) |
|
template<typename ParseState , typename... JsonMembers> |
DAW_ATTRIB_FLATINLINE DAW_JSON_MAKE_LOC_INFO_CONSTEVAL auto | make_locations_info () |
|
template<bool is_unchecked_input, char... keys, typename CharT > |
DAW_ATTRIB_INLINE CharT * | mem_move_to_next_of (runtime_exec_tag, CharT *first, CharT *last) |
|
template<bool is_unchecked_input, typename ExecTag , typename CharT , std::enable_if_t< std::is_base_of< runtime_exec_tag, ExecTag >::value, std::nullptr_t > = nullptr> |
DAW_ATTRIB_INLINE CharT * | mem_skip_string (ExecTag const &tag, CharT *first, CharT *const last) |
|
template<bool is_unchecked_input, typename ExecTag , typename CharT , std::enable_if_t< std::is_base_of< runtime_exec_tag, ExecTag >::value, std::nullptr_t > = nullptr> |
DAW_ATTRIB_INLINE CharT * | mem_skip_until_end_of_string (ExecTag const &tag, CharT *first, CharT *const last) |
|
template<bool is_unchecked_input, typename CharT > |
DAW_ATTRIB_INLINE CharT * | mem_skip_until_end_of_string (runtime_exec_tag tag, CharT *first, CharT *const last, std::ptrdiff_t &first_escape) |
|
template<typename JsonMember , typename OutputIterator , typename T > |
constexpr OutputIterator | member_to_string (template_param< JsonMember >, OutputIterator it, T const &value) |
|
template<char c, typename ExecTag , bool expect_long, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | memchr_checked (CharT *first, CharT *last) |
| Search for a character in a string. More...
|
|
template<char c, typename ExecTag , bool expect_long, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | memchr_unchecked (CharT *first, CharT *last) |
| Search for a character in a string. More...
|
|
template<bool is_unchecked_input, typename ExecTag , bool expect_long, char... chars, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | mempbrk (CharT *first, CharT *last) |
|
template<typename ExecTag , bool expect_long, char... chars, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | mempbrk_checked (CharT *first, CharT *last) |
|
template<typename ExecTag , bool expect_long, char... chars, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | mempbrk_unchecked (CharT *first, CharT *) |
|
template<typename Name > |
missing_required_mapping_for< Name > | missing_required_mapping_error () |
|
template<typename ParseState > |
constexpr bool | needs_slow_path (ParseState const &parse_state) |
|
template<typename T > |
constexpr auto | number_parse_type_test () -> std::enable_if_t< std::is_enum< T >::value, JsonParseTypes > |
|
template<typename OutputIterator > |
constexpr OutputIterator | output_hex (std::uint16_t c, OutputIterator it) |
|
constexpr UInt64 | parse_16_digits (const char *const str) |
|
constexpr UInt64 | parse_8_digits (const char *const str) |
|
template<std::size_t member_position, typename JsonMember , AllMembersMustExist must_exist, bool NeedsClassPositions, typename ParseState , std::size_t N, typename CharT , bool B> |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_class_member (ParseState &parse_state, locations_info_t< N, CharT, B > &locations) |
|
static constexpr DAW_ATTRIB_FLATINLINE unsigned | parse_digit (char c) |
|
template<bool skip_end_check, typename Unsigned > |
constexpr DAW_ATTRIB_FLATINLINE void | parse_digits_until_last (char const *first, char const *const last, Unsigned &v) |
|
template<bool skip_end_check, typename Unsigned , typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | parse_digits_while_number (CharT *first, CharT *const last, Unsigned &v) |
|
template<typename JsonClass , typename... JsonMembers, typename ParseState , std::size_t... Is> |
constexpr json_result< JsonClass > | parse_json_class (ParseState &parse_state, std::index_sequence< Is... >) |
|
template<typename JsonClass , typename... JsonMembers, typename ParseState > |
static constexpr json_result< JsonClass > | parse_json_tuple_class (template_params< JsonClass, JsonMembers... >, ParseState &parse_state) |
|
template<typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN daw::string_view | parse_name (ParseState &parse_state) |
|
template<std::size_t N, typename JsonClass , bool KnownBounds, typename... JsonClasses, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonClass > | parse_nth_class (std::size_t idx, ParseState &parse_state) |
|
template<typename JsonMember , typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_ordered_class_member (template_param< JsonMember >, std::size_t &member_index, ParseState &parse_state) |
| Parse a class member in an ordered json class(class as array). These are often referred to as JSON tuples. More...
|
|
template<typename Result , bool KnownRange, typename ParseState , std::enable_if_t< KnownRange, std::nullptr_t > = nullptr> |
constexpr DAW_ATTRIB_FLATINLINE Result | parse_real (ParseState &parse_state) |
|
template<bool AllowHighEight, typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr auto | parse_string_known_stdstring (ParseState &parse_state) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState , std::size_t... Is> |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_tuple_value (ParseState &parse_state, std::index_sequence< Is... >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Array >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Array >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Bool >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Bool >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Class >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Class >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Custom >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Date >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Date >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::KeyValue >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::KeyValue >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::KeyValueArray >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::KeyValueArray >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Null >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Null >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Real >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Real >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Signed >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Signed >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::SizedArray >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::SizedArray >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::StringEscaped >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::StringRaw >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::StringRaw >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Tuple >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Tuple >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Unknown >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Unknown >) |
|
template<typename JsonMember , bool KnownBounds, typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Unsigned >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Unsigned >) |
|
template<typename JsonMember , bool , typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Variant >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::Variant >) |
|
template<typename JsonMember , bool , typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::VariantIntrusive >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::VariantIntrusive >) |
|
template<typename JsonMember , bool , typename ParseState > |
constexpr DAW_ATTRIB_INLINE json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::VariantTagged >) |
|
template<typename JsonMember , bool KnownBounds, std::size_t N, typename ParseState , bool B> |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::VariantTagged >) |
|
template<typename JsonMember , bool KnownBounds = false, typename ParseState > |
constexpr json_result< JsonMember > | parse_value (ParseState &parse_state, ParseTag< JsonParseTypes::VariantTagged >) |
|
template<JsonBaseParseTypes BPT, typename JsonMembers , typename ParseState > |
constexpr DAW_ATTRIB_FLATTEN json_result< JsonMembers > | parse_variant_value (ParseState &parse_state) |
|
template<typename Result , typename TypeList , std::size_t pos = 0, typename ParseState > |
constexpr DAW_ATTRIB_INLINE Result | parse_visit (std::size_t idx, ParseState &parse_state) |
|
template<typename Real , std::enable_if_t< std::is_floating_point_v< Real >, std::nullptr_t > = nullptr> |
DAW_ATTRIB_NOINLINE Real | parse_with_strtod (char const *first, char const *last) |
|
constexpr pop_json_path_result | pop_json_path (daw::string_view &path) |
|
template<typename Result , typename Unsigned > |
static constexpr DAW_ATTRIB_FLATINLINE Result | power10 (constexpr_exec_tag, Result result, Unsigned p) |
|
template<typename Result , typename Unsigned > |
static constexpr DAW_ATTRIB_FLATINLINE Result | power10 (runtime_exec_tag, Result result, Unsigned p) |
|
template<typename... JsonMembers, typename OutputIterator , json_options_t SerializationOptions, std::size_t... Is, typename Tuple , typename Value > |
constexpr serialization_policy< OutputIterator, SerializationOptions > | serialize_json_class (serialization_policy< OutputIterator, SerializationOptions > it, Tuple const &args, Value const &value, std::index_sequence< Is... >) |
|
template<typename... JsonMembers, typename OutputIterator , json_options_t SerializerOptions, typename Tuple , typename Value , std::size_t... Is> |
constexpr serialization_policy< OutputIterator, SerializerOptions > | serialize_ordered_json_class (serialization_policy< OutputIterator, SerializerOptions > it, Tuple const &args, Value const &value, std::index_sequence< Is... >) |
|
template<typename Policy , typename... Policies> |
constexpr json_options_t | set_bits (json_options_t value, Policy pol, Policies... pols) |
|
template<typename... OptionList, typename Option , typename... Options> |
constexpr json_options_t | set_bits (JsonOptionList< OptionList... >, json_options_t value, Option pol, Options... pols) |
|
template<typename... OptionList, typename Option > |
static constexpr json_options_t | set_bits_for (JsonOptionList< OptionList... >, Option e) |
|
template<typename Policy > |
constexpr json_options_t | set_bits_for (Policy e) |
|
template<typename Policy > |
constexpr void | set_bits_in (json_options_t &value, Policy e) |
|
template<typename... OptionList, typename Option > |
constexpr void | set_bits_in (JsonOptionList< OptionList... >, json_options_t &value, Option e) |
|
template<bool skip_end_check, typename CharT > |
constexpr DAW_ATTRIB_FLATINLINE CharT * | skip_digits (CharT *first, CharT *const last) |
|
template<typename ParseState > |
constexpr ParseState | skip_false (ParseState &parse_state) |
|
template<typename JsonMember , typename ParseState > |
constexpr DAW_ATTRIB_FLATINLINE ParseState | skip_known_value (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr ParseState | skip_literal (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr ParseState | skip_null (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr ParseState | skip_number (ParseState &parse_state) |
|
template<LiteralAsStringOpt literal_as_string, typename ParseState > |
constexpr DAW_ATTRIB_INLINE void | skip_quote_when_literal_as_string (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr DAW_ATTRIB_FLATINLINE ParseState | skip_string (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr DAW_ATTRIB_FLATINLINE ParseState | skip_string_nq (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr ParseState | skip_true (ParseState &parse_state) |
|
template<typename ParseState > |
constexpr ParseState | skip_value (ParseState &parse_state) |
|
template<FPOutputFormat fp_output_format, typename OutputIterator , typename Real > |
constexpr OutputIterator | to_chars (Real const &value, OutputIterator out_it) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename parse_to_t > |
constexpr serialization_policy< OutputIterator, SerializationOptions > | to_daw_json_string (ParseTag< JsonParseTypes::Array >, serialization_policy< OutputIterator, SerializationOptions > it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Bool >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Class >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Custom >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Date >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename parse_to_t > |
constexpr serialization_policy< OutputIterator, SerializationOptions > | to_daw_json_string (ParseTag< JsonParseTypes::KeyValue >, serialization_policy< OutputIterator, SerializationOptions > it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename parse_to_t > |
constexpr serialization_policy< OutputIterator, SerializationOptions > | to_daw_json_string (ParseTag< JsonParseTypes::KeyValueArray >, serialization_policy< OutputIterator, SerializationOptions > it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializeOptions, typename parse_to_t > |
constexpr serialization_policy< OutputIterator, SerializeOptions > | to_daw_json_string (ParseTag< JsonParseTypes::KeyValueArray >, serialization_policy< OutputIterator, SerializeOptions > it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename Optional > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Null >, OutputIterator it, Optional const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Null >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Real >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Signed >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::SizedArray >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::StringEscaped >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::StringRaw >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename parse_to_t > |
constexpr serialization_policy< OutputIterator, SerializationOptions > | to_daw_json_string (ParseTag< JsonParseTypes::Tuple >, serialization_policy< OutputIterator, SerializationOptions > it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Unknown >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Unsigned >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::Variant >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::VariantIntrusive >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , typename parse_to_t > |
constexpr OutputIterator | to_daw_json_string (ParseTag< JsonParseTypes::VariantTagged >, OutputIterator it, parse_to_t const &value) |
|
template<typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename parse_to_t , std::size_t... Is> |
serialization_policy< OutputIterator, SerializationOptions > | to_daw_json_string_tuple (serialization_policy< OutputIterator, SerializationOptions > it, parse_to_t const &value, std::index_sequence< Is... >) |
|
template<size_t TupleIdx, typename JsonMember , typename OutputIterator , json_options_t SerializerOptions, template< class... > class Tuple, typename... Args> |
constexpr void | to_json_ordered_str (std::size_t &array_idx, std::size_t array_size, serialization_policy< OutputIterator, SerializerOptions > &it, Tuple< Args... > const &tp) |
|
template<std::size_t pos, typename JsonMember , typename OutputIterator , json_options_t SerializationOptions, typename Tuple , typename Value , typename Visited > |
constexpr void | to_json_str (bool &is_first, serialization_policy< OutputIterator, SerializationOptions > &it, Tuple const &tp, Value const &, Visited &visited_members) |
|
constexpr UInt8 | to_nibble (unsigned char chr) |
|
template<typename Char > |
constexpr char | to_nibble_char (Char c) |
|
template<typename Signed , typename Unsigned > |
constexpr Signed | to_signed (Unsigned &&u, Signed sign) |
|
template<std::size_t idx, typename JsonMembers , typename OutputIterator , typename parse_to_t > |
constexpr void | to_variant_string (OutputIterator &it, parse_to_t const &value) |
|
constexpr char | u32toC (UInt32 value) |
|
template<typename T > |
T | uneval_func () |
|
template<typename Unsigned , JsonRangeCheck RangeChecked, bool KnownBounds, typename ParseState , std::enable_if_t< KnownBounds, std::nullptr_t > = nullptr> |
static constexpr Unsigned | unsigned_parser (constexpr_exec_tag, ParseState &parse_state) |
|
template<typename OutputIterator > |
constexpr void | utf32_to_utf8 (std::uint32_t cp, OutputIterator &it) |
|