# `Exonerate.Formats.IriReference`
[🔗](https://github.com/E-xyza/exonerate/blob/master/lib/exonerate/formats/iri_reference.ex#L1)

Module which provides a macro that generates special code for an iri-reference
filter.  This is a uri-reference with internationalization support.

the format is governed by appendix A of RFC 3986:
https://www.rfc-editor.org/rfc/rfc3986.txt

# `filter`
*macro* 

Creates a `NimbleParsec` parser `~iri-reference/1`.

This function returns `{:ok, ...}` if the passed string is a valid iri
reference, or `{:error, reason, ...}` if it is not.  See `NimbleParsec` for
more information on the return tuples.

The function will only be created once per module, and it is safe to call
the macro more than once.

## Options:
- `:name` (atom): the name of the function to create.  Defaults to
  `:"~iri-reference"`

---

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