Packages
caffeine_lang
0.0.21
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
caffeine_lang
src
caffeine_lang@phase_1@parser@specification@unresolved_query_template_specification.erl
src/caffeine_lang@phase_1@parser@specification@unresolved_query_template_specification.erl
-module(caffeine_lang@phase_1@parser@specification@unresolved_query_template_specification).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/caffeine_lang/phase_1/parser/specification/unresolved_query_template_specification.gleam").
-export([parse_unresolved_query_template_types_specification/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.
-file("src/caffeine_lang/phase_1/parser/specification/unresolved_query_template_specification.gleam", 23).
?DOC(" Parses a single unresolved query template type.\n").
-spec parse_query_template_type(
glaml:node_(),
gleam@dict:dict(binary(), binary())
) -> {ok,
caffeine_lang@types@unresolved@unresolved_query_template_type:query_template_type()} |
{error, binary()}.
parse_query_template_type(Type_node, _) ->
gleam@result:'try'(
caffeine_lang@phase_1@parser@utils@glaml_helpers:extract_string_from_node(
Type_node,
<<"name"/utf8>>
),
fun(Name) ->
gleam@result:'try'(
caffeine_lang@phase_1@parser@utils@glaml_helpers:extract_string_list_from_node(
Type_node,
<<"specification_of_query_templates"/utf8>>
),
fun(Specification_of_query_templates) ->
gleam@result:'try'(
caffeine_lang@phase_1@parser@utils@glaml_helpers:extract_string_from_node(
Type_node,
<<"query"/utf8>>
),
fun(Query_string) ->
gleam@result:'try'(case Query_string of
<<""/utf8>> ->
{error,
<<"Empty query string is not allowed"/utf8>>};
_ ->
{ok, Query_string}
end, fun(Query_string@1) ->
gleam@result:'try'(
caffeine_lang@cql@parser:parse_expr(
Query_string@1
),
fun(Query) ->
{ok,
{query_template_type,
Name,
Specification_of_query_templates,
Query}}
end
)
end)
end
)
end
)
end
).
-file("src/caffeine_lang/phase_1/parser/specification/unresolved_query_template_specification.gleam", 10).
?DOC(" Given a specification file, returns a list of unresolved query template types.\n").
-spec parse_unresolved_query_template_types_specification(binary()) -> {ok,
list(caffeine_lang@types@unresolved@unresolved_query_template_type:query_template_type())} |
{error, binary()}.
parse_unresolved_query_template_types_specification(File_path) ->
caffeine_lang@phase_1@parser@utils@glaml_helpers:parse_specification(
File_path,
maps:new(),
fun parse_query_template_type/2,
<<"query_template_types"/utf8>>
).