Packages
oaspec
0.17.0
0.68.0
0.67.0
0.66.0
0.65.0
0.64.0
0.63.0
0.62.0
0.61.0
0.60.0
0.59.0
0.58.1
0.58.0
0.57.0
0.56.0
0.55.0
0.54.0
0.53.0
0.52.0
0.51.0
0.50.0
0.49.0
0.48.0
0.47.0
0.46.0
0.45.0
0.44.0
0.43.0
0.42.0
0.41.0
0.40.0
0.39.0
0.38.0
0.37.0
0.36.0
0.35.0
0.34.0
0.33.0
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.0
0.25.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.3
0.6.1
0.6.0
0.5.0
0.4.0
0.3.0
0.1.3
Generate Gleam code from OpenAPI 3.x specifications
Current section
Files
Jump to
Current section
Files
src/oaspec@codegen@context.erl
-module(oaspec@codegen@context).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/oaspec/codegen/context.gleam").
-export([new/2, spec/1, config/1]).
-export_type([context/0, file_target/0, generated_file/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.
-opaque context() :: {context,
oaspec@openapi@spec:open_api_spec(oaspec@openapi@spec:resolved()),
oaspec@config:config()}.
-type file_target() :: shared_target | server_target | client_target.
-type generated_file() :: {generated_file, binary(), binary(), file_target()}.
-file("src/oaspec/codegen/context.gleam", 19).
?DOC(" Create a new generation context from a resolved spec.\n").
-spec new(
oaspec@openapi@spec:open_api_spec(oaspec@openapi@spec:resolved()),
oaspec@config:config()
) -> context().
new(Spec, Config) ->
{context, Spec, Config}.
-file("src/oaspec/codegen/context.gleam", 24).
?DOC(" The resolved OpenAPI spec this context wraps.\n").
-spec spec(context()) -> oaspec@openapi@spec:open_api_spec(oaspec@openapi@spec:resolved()).
spec(Ctx) ->
erlang:element(2, Ctx).
-file("src/oaspec/codegen/context.gleam", 29).
?DOC(" The generation config this context wraps.\n").
-spec config(context()) -> oaspec@config:config().
config(Ctx) ->
erlang:element(3, Ctx).