Packages
caffeine_lang
0.0.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.erl
-module(caffeine_lang).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/caffeine_lang.gleam").
-export([main/0]).
-file("src/caffeine_lang.gleam", 5).
-spec print_usage() -> nil.
print_usage() ->
gleam_stdlib:println(<<"Caffeine SLI/SLO compiler"/utf8>>),
gleam_stdlib:println(<<""/utf8>>),
gleam_stdlib:println(<<"Usage:"/utf8>>),
gleam_stdlib:println(
<<" caffeine compile <specification_directory> <instantiation_directory> <output_directory>"/utf8>>
),
gleam_stdlib:println(<<""/utf8>>),
gleam_stdlib:println(<<"Arguments:"/utf8>>),
gleam_stdlib:println(
<<" specification_directory Directory containing specification files"/utf8>>
),
gleam_stdlib:println(
<<" instantiation_directory Directory containing instantiation files"/utf8>>
),
gleam_stdlib:println(
<<" output_directory Directory to output compiled files"/utf8>>
).
-file("src/caffeine_lang.gleam", 23).
-spec main() -> nil.
main() ->
Args = erlang:element(4, argv:load()),
case Args of
[<<"compile"/utf8>>, Spec_dir, Inst_dir, Output_dir] ->
caffeine_lang@compiler:compile(Spec_dir, Inst_dir, Output_dir);
[<<"compile"/utf8>>] ->
gleam_stdlib:println_error(
<<"Error: compile command requires 3 arguments"/utf8>>
),
print_usage();
[<<"compile"/utf8>> | _] ->
gleam_stdlib:println_error(
<<"Error: compile command requires exactly 3 arguments"/utf8>>
),
print_usage();
[<<"--help"/utf8>>] ->
print_usage();
[<<"-h"/utf8>>] ->
print_usage();
[] ->
print_usage();
_ ->
gleam_stdlib:println_error(<<"Error: unknown command"/utf8>>),
print_usage()
end.