Packages
caffeine_lang
4.3.6
6.3.1
6.3.0
6.2.2
6.2.1
6.2.0
6.1.2
6.1.1
6.1.0
6.0.0
5.6.0
5.5.0
5.4.4
5.4.3
5.4.2
5.4.1
5.4.0
5.3.0
5.2.0
5.1.1
5.1.0
5.0.12
5.0.11
5.0.10
5.0.8
5.0.7
5.0.6
5.0.5
5.0.4
5.0.1
5.0.0
4.10.0
4.9.0
4.8.3
4.8.2
4.8.1
4.8.0
4.7.9
4.7.8
4.7.7
4.7.6
4.7.5
4.6.7
4.6.6
4.6.5
4.6.4
4.6.3
4.6.2
4.6.0
4.5.1
4.5.0
4.4.4
4.4.3
4.4.1
4.4.0
4.3.7
4.3.6
3.0.6
3.0.5
3.0.4
3.0.3
3.0.2
3.0.1
3.0.0
2.0.5
2.0.4
2.0.3
2.0.2
2.0.1
2.0.0
1.0.2
1.0.1
0.1.0
0.0.24
0.0.23
0.0.22
0.0.21
0.0.20
0.0.19
0.0.18
0.0.17
0.0.16
0.0.15
0.0.14
0.0.13
0.0.12
0.0.11
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.2
0.0.1
A compiler for generating reliability artifacts from service expectation definitions.
Current section
Files
Jump to
Current section
Files
src/caffeine_lang@frontend@parser_error.erl
-module(caffeine_lang@frontend@parser_error).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/caffeine_lang/frontend/parser_error.gleam").
-export([to_string/1]).
-export_type([parser_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 parser_error() :: {tokenizer_error,
caffeine_lang@frontend@tokenizer_error:tokenizer_error()} |
{unexpected_token, binary(), binary(), integer(), integer()} |
{unexpected_e_o_f, binary(), integer(), integer()} |
{unknown_type, binary(), integer(), integer()} |
{invalid_refinement, binary(), integer(), integer()} |
{quoted_field_name, binary(), integer(), integer()} |
{invalid_type_alias_name, binary(), binary(), integer(), integer()}.
-file("src/caffeine_lang/frontend/parser_error.gleam", 16).
?DOC(" Converts a parser error to a human-readable string.\n").
-spec to_string(parser_error()) -> binary().
to_string(Err) ->
case Err of
{tokenizer_error, Tok_err} ->
caffeine_lang@frontend@tokenizer_error:to_string(Tok_err);
{unexpected_token, Expected, Got, Line, Column} ->
<<<<<<<<<<<<<<"Unexpected token at line "/utf8,
(erlang:integer_to_binary(Line))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column))/binary>>/binary,
": expected "/utf8>>/binary,
Expected/binary>>/binary,
", got "/utf8>>/binary,
Got/binary>>;
{unexpected_e_o_f, Expected@1, Line@1, Column@1} ->
<<<<<<<<<<"Unexpected end of file at line "/utf8,
(erlang:integer_to_binary(Line@1))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column@1))/binary>>/binary,
": expected "/utf8>>/binary,
Expected@1/binary>>;
{unknown_type, Name, Line@2, Column@2} ->
<<<<<<<<<<"Unknown type '"/utf8, Name/binary>>/binary,
"' at line "/utf8>>/binary,
(erlang:integer_to_binary(Line@2))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column@2))/binary>>;
{invalid_refinement, Message, Line@3, Column@3} ->
<<<<<<<<<<"Invalid refinement at line "/utf8,
(erlang:integer_to_binary(Line@3))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column@3))/binary>>/binary,
": "/utf8>>/binary,
Message/binary>>;
{quoted_field_name, Name@1, Line@4, Column@4} ->
<<<<<<<<<<<<<<<<"Quoted field name at line "/utf8,
(erlang:integer_to_binary(Line@4))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column@4))/binary>>/binary,
": field names should not be quoted. Use '"/utf8>>/binary,
Name@1/binary>>/binary,
"' instead of '\""/utf8>>/binary,
Name@1/binary>>/binary,
"\"'"/utf8>>;
{invalid_type_alias_name, Name@2, Message@1, Line@5, Column@5} ->
<<<<<<<<<<<<<<"Invalid type alias name '"/utf8, Name@2/binary>>/binary,
"' at line "/utf8>>/binary,
(erlang:integer_to_binary(Line@5))/binary>>/binary,
", column "/utf8>>/binary,
(erlang:integer_to_binary(Column@5))/binary>>/binary,
": "/utf8>>/binary,
Message@1/binary>>
end.