aprs.me/build/dev/erlang/gleeunit/_gleam_artefacts/gleeunit@internal@gleam_panic.erl
Graham McIntire 00a8f996f4
Add Gleam language integration to Elixir project
- Rename Gleam module from encoding_simple to encoding
- Move Gleam files from src/aprs/ to src/aprsme/ to match project namespace
- Create custom Mix task for Gleam compilation (lib/mix/tasks/gleam_compile.ex)
- Update EncodingUtils to wrap Gleam implementation instead of pure Elixir
- Add Gleam dependencies to mix.exs and configure build paths
- Update Mix aliases to include Gleam compilation in test and compile tasks
- Add Gleam support to GitHub Actions CI workflow with caching
- Add GLEAM_INTEGRATION.md documentation
- All 357 tests passing with Gleam integration

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 13:58:21 -05:00

56 lines
1.6 KiB
Erlang

-module(gleeunit@internal@gleam_panic).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-define(FILEPATH, "src/gleeunit/internal/gleam_panic.gleam").
-export([from_dynamic/1]).
-export_type([gleam_panic/0, panic_kind/0, assert_kind/0, asserted_expression/0, expression_kind/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).
-type gleam_panic() :: {gleam_panic,
binary(),
binary(),
binary(),
binary(),
integer(),
panic_kind()}.
-type panic_kind() :: todo |
panic |
{let_assert,
integer(),
integer(),
integer(),
integer(),
gleam@dynamic:dynamic_()} |
{assert, integer(), integer(), integer(), assert_kind()}.
-type assert_kind() :: {binary_operator,
binary(),
asserted_expression(),
asserted_expression()} |
{function_call, list(asserted_expression())} |
{other_expression, asserted_expression()}.
-type asserted_expression() :: {asserted_expression,
integer(),
integer(),
expression_kind()}.
-type expression_kind() :: {literal, gleam@dynamic:dynamic_()} |
{expression, gleam@dynamic:dynamic_()} |
unevaluated.
-file("src/gleeunit/internal/gleam_panic.gleam", 49).
?DOC(false).
-spec from_dynamic(gleam@dynamic:dynamic_()) -> {ok, gleam_panic()} |
{error, nil}.
from_dynamic(Data) ->
gleeunit_gleam_panic_ffi:from_dynamic(Data).