# `Artefact.Binding`
[🔗](https://github.com/diffo-dev/artefactory/blob/v0.1.5/lib/artefact/binding.ex#L4)

A declared equivalence between nodes across two artefacts.

Bindings are the basis for union — without at least one binding,
two artefacts have no commons and cannot be combined.

# `t`

```elixir
@type t() :: %Artefact.Binding{uuid_a: String.t(), uuid_b: String.t()}
```

# `find`

Find bindings between two artefacts.

By default, nodes with the same uuid are automatically bound.
Use `inject:` to declare equivalences between nodes with different uuids.

Returns `{:ok, bindings}` or `{:error, :no_match}` if no bindings found.

## Options
  - `inject:` — list of `{uuid_a, uuid_b}` pairs declaring equivalences

---

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