-module(sqlode@internal@char_utils). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/sqlode/internal/char_utils.gleam"). -export([is_digit/1, is_uppercase_letter/1, is_lowercase_letter/1, is_alpha_or_underscore/1, is_alnum_or_underscore/1, all_digits/1]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. ?MODULEDOC(false). -file("src/sqlode/internal/char_utils.gleam", 3). ?DOC(false). -spec is_digit(binary()) -> boolean(). is_digit(G) -> case G of <<"0"/utf8>> -> true; <<"1"/utf8>> -> true; <<"2"/utf8>> -> true; <<"3"/utf8>> -> true; <<"4"/utf8>> -> true; <<"5"/utf8>> -> true; <<"6"/utf8>> -> true; <<"7"/utf8>> -> true; <<"8"/utf8>> -> true; <<"9"/utf8>> -> true; _ -> false end. -file("src/sqlode/internal/char_utils.gleam", 10). ?DOC(false). -spec is_alpha(binary()) -> boolean(). is_alpha(G) -> Cp@1 = case gleam@string:to_utf_codepoints(G) of [Cp] -> gleam_stdlib:identity(Cp); _ -> 0 end, ((Cp@1 >= 65) andalso (Cp@1 =< 90)) orelse ((Cp@1 >= 97) andalso (Cp@1 =< 122)). -file("src/sqlode/internal/char_utils.gleam", 18). ?DOC(false). -spec is_uppercase_letter(binary()) -> boolean(). is_uppercase_letter(G) -> Cp@1 = case gleam@string:to_utf_codepoints(G) of [Cp] -> gleam_stdlib:identity(Cp); _ -> 0 end, (Cp@1 >= 65) andalso (Cp@1 =< 90). -file("src/sqlode/internal/char_utils.gleam", 26). ?DOC(false). -spec is_lowercase_letter(binary()) -> boolean(). is_lowercase_letter(G) -> Cp@1 = case gleam@string:to_utf_codepoints(G) of [Cp] -> gleam_stdlib:identity(Cp); _ -> 0 end, (Cp@1 >= 97) andalso (Cp@1 =< 122). -file("src/sqlode/internal/char_utils.gleam", 34). ?DOC(false). -spec is_alpha_or_underscore(binary()) -> boolean(). is_alpha_or_underscore(G) -> is_alpha(G) orelse (G =:= <<"_"/utf8>>). -file("src/sqlode/internal/char_utils.gleam", 38). ?DOC(false). -spec is_alnum_or_underscore(binary()) -> boolean(). is_alnum_or_underscore(G) -> (is_alpha(G) orelse is_digit(G)) orelse (G =:= <<"_"/utf8>>). -file("src/sqlode/internal/char_utils.gleam", 49). ?DOC(false). -spec all_digits_loop(binary()) -> boolean(). all_digits_loop(Value) -> case gleam_stdlib:string_pop_grapheme(Value) of {error, _} -> true; {ok, {Char, Rest}} -> case is_digit(Char) of true -> all_digits_loop(Rest); false -> false end end. -file("src/sqlode/internal/char_utils.gleam", 42). ?DOC(false). -spec all_digits(binary()) -> boolean(). all_digits(Value) -> case Value of <<""/utf8>> -> false; _ -> all_digits_loop(Value) end.