-module(caffeine_lang@frontend@tokenizer_error). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/caffeine_lang/frontend/tokenizer_error.gleam"). -export([to_string/1]). -export_type([tokenizer_error/0]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. -type tokenizer_error() :: {unterminated_string, integer(), integer()} | {invalid_character, integer(), integer(), binary()}. -file("src/caffeine_lang/frontend/tokenizer_error.gleam", 11). ?DOC(false). -spec to_string(tokenizer_error()) -> binary(). to_string(Err) -> case Err of {unterminated_string, Line, Column} -> <<<<<<"Unterminated string at line "/utf8, (erlang:integer_to_binary(Line))/binary>>/binary, ", column "/utf8>>/binary, (erlang:integer_to_binary(Column))/binary>>; {invalid_character, Line@1, Column@1, Char} -> <<<<<<<<<<"Invalid character '"/utf8, Char/binary>>/binary, "' at line "/utf8>>/binary, (erlang:integer_to_binary(Line@1))/binary>>/binary, ", column "/utf8>>/binary, (erlang:integer_to_binary(Column@1))/binary>> end.