View Source locus_mmdb_check (locus v2.3.11)
API for working with MMDB - wholesomeness check
Summary
Functions
Checks for errors and quirks within Database
Types
-type bad_chunk_in_data_section() :: {bad_chunk_in_data_section, #{position := non_neg_integer(), why := term(), under := #{path := [{non_neg_integer(), term()}]}}}.
-type bad_data_index_in_tree() :: {bad_data_index_in_tree, non_neg_integer(), #{why := term(), under := #{prefix := string(), path := [non_neg_integer()]}}}.
-type bad_node_index_in_tree() :: {bad_node_index_in_tree, non_neg_integer(), #{under := #{prefix := string(), path := [non_neg_integer()]}}}.
-type excessively_long_path_in_tree() :: {excessively_long_path_in_tree, non_neg_integer(), #{under := #{prefix := string(), path := [non_neg_integer()]}}}.
-type invalid_position_in_data_section() :: {invalid_position_in_data_section, #{which => non_neg_integer(), under := #{path := [{non_neg_integer(), term()}]}}}.
-type invalid_utf8_string_in_data_section() :: {invalid_utf8_string_in_data_section, #{position := non_neg_integer(), original_data := binary(), error := term(), under := #{path := [{non_neg_integer(), term()}]}}}.
-type loop_in_data_section() :: {loop_in_data_section, #{path => [{non_neg_integer(), term()}, ...]}}.
-type map_key_of_wrong_type_in_data_section() :: {map_key_of_wrong_type_in_data_section, #{position := non_neg_integer(), key := term(), under := #{path := [{non_neg_integer(), term()}]}}}.
-type unprintable_utf8_string_in_data_section() :: {unprintable_utf8_string_in_data_section, #{position := non_neg_integer(), value := unicode:unicode_binary(), under := #{path := [{non_neg_integer(), term()}]}}}.
-type warning() :: unprintable_utf8_string_in_data_section().
Functions
-spec run(locus_mmdb:database()) -> ok | {warnings, [warning(), ...]} | {errors, [error(), ...], [warning()]}.
Checks for errors and quirks within Database