# `Ash.Filter.Runtime`
[🔗](https://github.com/ash-project/ash/blob/v3.34.4/lib/ash/filter/runtime.ex#L5)

Tools to checks a record to see if it matches a filter statement, or to
evaluate expressions against records.

# `as_of_matches`

```elixir
@spec as_of_matches([Ash.Resource.Record.t()], Ash.Resource.t(), term()) :: [
  Ash.Resource.Record.t()
]
```

Keeps the records of a temporal resource whose period holds `as_of`.

For data layers that answer a read by materialising records and filtering them in
the BEAM. Records are returned untouched when the resource is not temporal or there
is no instant to narrow to, and a record carrying no period is dropped.

# `filter_matches`

Removes any records that don't match the filter. Automatically loads
if necessary. If there are any ambiguous terms in the filter (e.g things
that could only be determined by data layer), it is assumed that they
are not matches.

# `old_get_related`

---

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