Packages

Prevent cascading failures in your Gleam applications. Circuit breaker pattern with sliding window tracking, OTP-supervised state, and support for both Erlang and JavaScript targets.

Current section

Files

Jump to
circuit src circuit.erl
Raw

src/circuit.erl

-module(circuit).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/circuit.gleam").
-export_type([circuit_state/0, config/0, call_result/0]).
-type circuit_state() :: closed | open | half_open.
-type config() :: {config, integer(), integer(), integer()}.
-type call_result() :: success | {failure, binary()}.