# `ImagePipe.Plan.Source`
[🔗](https://github.com/hlindset/image_pipe/blob/v0.1.0/image_pipe_url/lib/image_pipe/plan/source.ex#L1)

Product-neutral source identifiers produced by parsers.

# `t`

```elixir
@type t() ::
  ImagePipe.Plan.Source.Path.t()
  | ImagePipe.Plan.Source.URL.t()
  | ImagePipe.Plan.Source.Object.t()
```

# `normalize`

```elixir
@spec normalize(String.t()) :: String.t()
```

Removes the optional leading `/` from an ordinary root-relative source string.

The slash is kept when removing it would change the source kind: a `//`
prefix, or a remainder that starts with a `scheme://` prefix.

---

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