# `A2UICore.Resolution.Binding`
[🔗](https://github.com/a2ui-elixir/a2ui/blob/v0.1.1/umbrella/apps/a2ui_core/lib/a2ui_core/resolution/binding.ex#L1)

A resolved dynamic property: the value it currently holds and, when the
component bound it to a data path, the absolute path a write goes to.

A literal, a function call and a binding that failed to resolve are
read-only; a `{"path": …}` binding (`{"@path": …}` in v1.0) is
writable.

    iex> A2UICore.Resolution.Binding.writable?(%A2UICore.Resolution.Binding{value: "Ada", path: "/user/name"})
    true
    iex> A2UICore.Resolution.Binding.writable?(%A2UICore.Resolution.Binding{value: "Ada"})
    false

# `t`
*since 0.1.0* 

```elixir
@type t() :: %A2UICore.Resolution.Binding{path: String.t() | nil, value: term()}
```

# `writable?`
*since 0.1.0* 

```elixir
@spec writable?(t()) :: boolean()
```

Whether a write through the binding reaches the data model.

---

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