# `RustQ.Meta.Core.Call`
[🔗](https://github.com/elixir-crab/rustq/blob/v1.0.0-rc.19/lib/rustq/meta/core/call.ex#L1)

A call in Rusty-Elixir normalized to its module, function, and arguments, so lowering and
typing match `Kernel` operators, local calls, remote calls, and pipes the same way.

# `t`

```elixir
@type t() :: %RustQ.Meta.Core.Call{
  args: [Macro.t()],
  function: atom(),
  meta: keyword(),
  module: module(),
  source: Macro.t()
}
```

# `normalize`

```elixir
@spec normalize(Macro.t()) :: {:ok, t()} | :unsupported
```

# `pipe_remote`

```elixir
@spec pipe_remote(Macro.t(), Macro.t()) :: {:ok, Macro.t()} | :unsupported
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
