# `RustQ.Syn.Type.Fn`
[🔗](https://github.com/elixir-crab/rustq/blob/v1.0.0-rc.16/lib/rustq/syn.ex#L212)

Rust bare function pointer type metadata.

# `t`

```elixir
@type t() :: %RustQ.Syn.Type.Fn{
  abi: String.t() | nil,
  arg_names: [String.t() | nil],
  args: [RustQ.Syn.type()],
  code: String.t(),
  external: boolean(),
  lifetimes: [String.t()],
  returns: RustQ.Syn.type() | nil,
  unsafe: boolean(),
  variadic: boolean(),
  variadic_name: String.t() | nil
}
```

---

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