Packages
caffeine_lang
5.4.0
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@token.erl
-module(caffeine_lang@frontend@token).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/caffeine_lang/frontend/token.gleam").
-export([to_string/1]).
-export_type([positioned_token/0, token/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 positioned_token() :: {positioned_token, token(), integer(), integer()}.
-type token() :: keyword_expectations |
keyword_unmeasured |
keyword_measured |
keyword_by |
keyword_extends |
keyword_requires |
keyword_provides |
keyword_in |
keyword_x |
keyword_string |
keyword_integer |
keyword_float |
keyword_boolean |
keyword_list |
keyword_dict |
keyword_optional |
keyword_defaulted |
keyword_type |
keyword_u_r_l |
keyword_percentage |
{literal_string, binary()} |
{literal_integer, integer()} |
{literal_float, float()} |
{literal_percentage, float()} |
literal_true |
literal_false |
symbol_left_brace |
symbol_right_brace |
symbol_left_paren |
symbol_right_paren |
symbol_left_bracket |
symbol_right_bracket |
symbol_colon |
symbol_comma |
symbol_star |
symbol_pipe |
symbol_equals |
symbol_dot_dot |
whitespace_newline |
{whitespace_indent, integer()} |
{comment_line, binary()} |
{comment_section, binary()} |
{comment_doc, binary()} |
{identifier, binary()} |
e_o_f.
-file("src/caffeine_lang/frontend/token.gleam", 56).
?DOC(" Convert token to string for error messages.\n").
-spec to_string(token()) -> binary().
to_string(Tok) ->
case Tok of
keyword_expectations ->
<<"Expectations"/utf8>>;
keyword_unmeasured ->
<<"Unmeasured"/utf8>>;
keyword_measured ->
<<"measured"/utf8>>;
keyword_by ->
<<"by"/utf8>>;
keyword_extends ->
<<"extends"/utf8>>;
keyword_requires ->
<<"Requires"/utf8>>;
keyword_provides ->
<<"Provides"/utf8>>;
keyword_in ->
<<"in"/utf8>>;
keyword_x ->
<<"x"/utf8>>;
keyword_string ->
<<"String"/utf8>>;
keyword_integer ->
<<"Integer"/utf8>>;
keyword_float ->
<<"Float"/utf8>>;
keyword_boolean ->
<<"Boolean"/utf8>>;
keyword_list ->
<<"List"/utf8>>;
keyword_dict ->
<<"Dict"/utf8>>;
keyword_optional ->
<<"Optional"/utf8>>;
keyword_defaulted ->
<<"Defaulted"/utf8>>;
keyword_type ->
<<"Type"/utf8>>;
keyword_u_r_l ->
<<"URL"/utf8>>;
keyword_percentage ->
<<"Percentage"/utf8>>;
{literal_string, S} ->
<<<<"\""/utf8, S/binary>>/binary, "\""/utf8>>;
{literal_integer, _} ->
<<"integer"/utf8>>;
{literal_float, _} ->
<<"float"/utf8>>;
{literal_percentage, _} ->
<<"percentage"/utf8>>;
literal_true ->
<<"true"/utf8>>;
literal_false ->
<<"false"/utf8>>;
symbol_left_brace ->
<<"{"/utf8>>;
symbol_right_brace ->
<<"}"/utf8>>;
symbol_left_paren ->
<<"("/utf8>>;
symbol_right_paren ->
<<")"/utf8>>;
symbol_left_bracket ->
<<"["/utf8>>;
symbol_right_bracket ->
<<"]"/utf8>>;
symbol_colon ->
<<":"/utf8>>;
symbol_comma ->
<<","/utf8>>;
symbol_star ->
<<"*"/utf8>>;
symbol_pipe ->
<<"|"/utf8>>;
symbol_equals ->
<<"="/utf8>>;
symbol_dot_dot ->
<<".."/utf8>>;
whitespace_newline ->
<<"newline"/utf8>>;
{whitespace_indent, _} ->
<<"indent"/utf8>>;
{comment_line, _} ->
<<"comment"/utf8>>;
{comment_section, _} ->
<<"section comment"/utf8>>;
{comment_doc, _} ->
<<"doc comment"/utf8>>;
{identifier, Name} ->
Name;
e_o_f ->
<<"end of file"/utf8>>
end.