-module(yodel@internal@parser). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/yodel/internal/parser.gleam"). -export([supported_extensions/0, parse/2]). -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). -file("src/yodel/internal/parser.gleam", 11). ?DOC(false). -spec supported_extensions() -> list(binary()). supported_extensions() -> lists:append( [yodel@internal@parsers@yaml:supported_extensions(), yodel@internal@parsers@toml:supported_extensions()] ). -file("src/yodel/internal/parser.gleam", 34). ?DOC(false). -spec parse_json(binary()) -> {ok, yodel@internal@properties:properties()} | {error, yodel@errors:config_error()}. parse_json(Content) -> yodel@internal@parsers@yaml:parse(Content). -file("src/yodel/internal/parser.gleam", 39). ?DOC(false). -spec parse_toml(binary()) -> {ok, yodel@internal@properties:properties()} | {error, yodel@errors:config_error()}. parse_toml(Content) -> yodel@internal@parsers@toml:parse(Content). -file("src/yodel/internal/parser.gleam", 43). ?DOC(false). -spec parse_yaml(binary()) -> {ok, yodel@internal@properties:properties()} | {error, yodel@errors:config_error()}. parse_yaml(Content) -> yodel@internal@parsers@yaml:parse(Content). -file("src/yodel/internal/parser.gleam", 22). ?DOC(false). -spec parse(binary(), yodel@options:format()) -> {ok, yodel@internal@properties:properties()} | {error, yodel@errors:config_error()}. parse(Content, Format) -> case Format of json -> _pipe = Content, parse_json(_pipe); toml -> _pipe@1 = Content, parse_toml(_pipe@1); yaml -> _pipe@2 = Content, parse_yaml(_pipe@2); auto -> {error, {parse_error, unknown_format}} end.