ip v0.1.0 IP.Prefix.Parser

Used internally by IP.Prefix.from_string to parse IP prefixes.

Link to this section Summary

Functions

Attempts to parse a prefix of unknown IP version

Attempts to parse a prefix of a specific IP version from a string

Link to this section Functions

Link to this function parse(prefix)
parse(binary) :: IP.Prefix.t

Attempts to parse a prefix of unknown IP version.

This attempts to parse as IPv4 and then as IPv6. Obviously it’s slower than parsing a specific version if you know that at call time.

Examples

iex> "192.0.2.1/25"
...> |> IP.Prefix.Parser.parse()
...> |> inspect()
"{:ok, #IP.Prefix<192.0.2.0/25>}"

iex> "2001:db8::/64"
...> |> IP.Prefix.Parser.parse()
...> |> inspect()
"{:ok, #IP.Prefix<2001:db8::/64>}"
Link to this function parse(prefix, version)
parse(binary, 4 | 6) :: IP.Prefix.t

Attempts to parse a prefix of a specific IP version from a string.

Examples

iex> "192.0.2.1/25"
...> |> IP.Prefix.Parser.parse(4)
...> |> inspect()
"{:ok, #IP.Prefix<192.0.2.0/25>}"

iex> "2001:db8::/64"
...> |> IP.Prefix.Parser.parse(6)
...> |> inspect()
"{:ok, #IP.Prefix<2001:db8::/64>}"