Packages
oaspec
0.61.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@internal@codegen@ir.erl
-module(oaspec@internal@codegen@ir).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/oaspec/internal/codegen/ir.gleam").
-export([module/3, module_with_header_records/4, module_imports/1, module_declarations/1, declaration/2, declaration_doc/1, declaration_type_def/1, module_header_records/1]).
-export_type([module_/0, declaration/0, type_def/0, field/0, variant/0, response_header_record/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.
?MODULEDOC(false).
-opaque module_() :: {module,
binary(),
list(binary()),
list(declaration()),
list(response_header_record())}.
-opaque declaration() :: {declaration,
gleam@option:option(binary()),
type_def()}.
-type type_def() :: {type_alias, binary(), binary()} |
{record_type, binary(), list(field())} |
{union_type, binary(), list(variant())} |
{enum_type, binary(), list(binary())}.
-type field() :: {field, binary(), binary()}.
-type variant() :: {variant_with_type, binary(), binary()} |
{variant_empty, binary()} |
{variant_with_type_and_headers, binary(), binary(), binary()} |
{variant_with_headers, binary(), binary()} |
{variant_default,
binary(),
gleam@option:option(binary()),
gleam@option:option(binary())}.
-type response_header_record() :: {response_header_record,
binary(),
list(field())}.
-file("src/oaspec/internal/codegen/ir.gleam", 22).
?DOC(false).
-spec module(binary(), list(binary()), list(declaration())) -> module_().
module(Header, Imports, Declarations) ->
{module, Header, Imports, Declarations, []}.
-file("src/oaspec/internal/codegen/ir.gleam", 31).
?DOC(false).
-spec module_with_header_records(
binary(),
list(binary()),
list(declaration()),
list(response_header_record())
) -> module_().
module_with_header_records(Header, Imports, Declarations, Header_records) ->
{module, Header, Imports, Declarations, Header_records}.
-file("src/oaspec/internal/codegen/ir.gleam", 41).
?DOC(false).
-spec module_imports(module_()) -> list(binary()).
module_imports(M) ->
erlang:element(3, M).
-file("src/oaspec/internal/codegen/ir.gleam", 46).
?DOC(false).
-spec module_declarations(module_()) -> list(declaration()).
module_declarations(M) ->
erlang:element(4, M).
-file("src/oaspec/internal/codegen/ir.gleam", 59).
?DOC(false).
-spec declaration(gleam@option:option(binary()), type_def()) -> declaration().
declaration(Doc, Type_def) ->
{declaration, Doc, Type_def}.
-file("src/oaspec/internal/codegen/ir.gleam", 67).
?DOC(false).
-spec declaration_doc(declaration()) -> gleam@option:option(binary()).
declaration_doc(D) ->
erlang:element(2, D).
-file("src/oaspec/internal/codegen/ir.gleam", 72).
?DOC(false).
-spec declaration_type_def(declaration()) -> type_def().
declaration_type_def(D) ->
erlang:element(3, D).
-file("src/oaspec/internal/codegen/ir.gleam", 133).
?DOC(false).
-spec module_header_records(module_()) -> list(response_header_record()).
module_header_records(M) ->
erlang:element(5, M).