-module(cangaroo@excansock). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/cangaroo/excansock.gleam"). -export([start_link/0, open/3, close/1, send/2, set_loopback/2, recv_own_messages/2, set_filters/2, set_error_filter/2, stop/1]). -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( " Internal bindings to the Excansock Elixir library.\n" "\n" " This module provides direct FFI bindings to the `Excansock` Elixir module,\n" " which handles the lower-level SocketCAN operations. These functions are used\n" " internally by the main `cangaroo` module and are not part of the public API.\n" ). -file("src/cangaroo/excansock.gleam", 12). -spec start_link() -> {gleam@erlang@atom:atom_(), gleam@erlang@process:pid_()}. start_link() -> 'Elixir.Excansock':start_link(). -file("src/cangaroo/excansock.gleam", 15). -spec open(gleam@erlang@process:pid_(), binary(), boolean()) -> gleam@dynamic:dynamic_(). open(Pid, Interface, Canfd) -> 'Elixir.Excansock':open(Pid, Interface, Canfd). -file("src/cangaroo/excansock.gleam", 18). -spec close(gleam@erlang@process:pid_()) -> gleam@erlang@atom:atom_(). close(Pid) -> 'Elixir.Excansock':close(Pid). -file("src/cangaroo/excansock.gleam", 21). -spec send(gleam@erlang@process:pid_(), gleam@dynamic:dynamic_()) -> gleam@erlang@atom:atom_(). send(Pid, Frame) -> 'Elixir.Excansock':send(Pid, Frame). -file("src/cangaroo/excansock.gleam", 24). -spec set_loopback(gleam@erlang@process:pid_(), boolean()) -> gleam@erlang@atom:atom_(). set_loopback(Pid, Value) -> 'Elixir.Excansock':set_loopback(Pid, Value). -file("src/cangaroo/excansock.gleam", 27). -spec recv_own_messages(gleam@erlang@process:pid_(), boolean()) -> gleam@erlang@atom:atom_(). recv_own_messages(Pid, Value) -> 'Elixir.Excansock':recv_own_messages(Pid, Value). -file("src/cangaroo/excansock.gleam", 30). -spec set_filters(gleam@erlang@process:pid_(), list(gleam@dynamic:dynamic_())) -> gleam@erlang@atom:atom_(). set_filters(Pid, Filters) -> 'Elixir.Excansock':set_filters(Pid, Filters). -file("src/cangaroo/excansock.gleam", 36). -spec set_error_filter(gleam@erlang@process:pid_(), integer()) -> gleam@erlang@atom:atom_(). set_error_filter(Pid, Filter) -> 'Elixir.Excansock':set_error_filter(Pid, Filter). -file("src/cangaroo/excansock.gleam", 39). -spec stop(gleam@erlang@process:pid_()) -> gleam@erlang@atom:atom_(). stop(Pid) -> 'Elixir.GenServer':stop(Pid).