Fix credo warnings.

This commit is contained in:
James Harton 2017-10-10 08:49:05 +13:00
parent db9ab41b53
commit e60eced8b0
3 changed files with 12 additions and 7 deletions

View file

@ -267,7 +267,7 @@ defmodule IP.Address do
"""
@spec to_prefix(t, Prefix.ipv4_prefix_length | Prefix.ipv6_prefix_length) \
:: Prefix.t
def to_prefix(%Address{} = address, length), do: IP.Prefix.new(address, length)
def to_prefix(%Address{} = address, length), do: Prefix.new(address, length)
@doc """
Returns the IP version of the address.
@ -516,7 +516,8 @@ defmodule IP.Address do
iex> IP.Address.generate_ula("60:f8:1d:ad:d8:90")
#IP.Address<fd29:f1ef:86a1::>
"""
@spec generate_ula(binary, non_neg_integer, true | false) :: {:ok, t} | {:error, term}
@spec generate_ula(binary, non_neg_integer, true | false) :: \
{:ok, t} | {:error, term}
def generate_ula(mac, subnet_id \\ 0, locally_assigned \\ true) do
with {:ok, address} <- ULA.generate(mac, subnet_id, locally_assigned),
{:ok, address} <- from_integer(address, 6)

View file

@ -10,7 +10,8 @@ defmodule IP.Address.ULA do
@doc """
Generates an IPv6 Unique Local Address
"""
@spec generate(binary, non_neg_integer, true | false) :: {:ok, Address.ipv4} | {:error, term}
@spec generate(binary, non_neg_integer, true | false) :: \
{:ok, Address.ipv4} | {:error, term}
def generate(mac, subnet_id, locally_assigned)
when is_binary(mac)
and is_integer(subnet_id) and subnet_id >= 0 and subnet_id <= 0xffff
@ -21,7 +22,9 @@ defmodule IP.Address.ULA do
{:ok, eui} <- EUI64.eui_portion(mac),
{:ok, digest} <- generate_digest(ntp_time, eui),
{:ok, global_id} <- last_40_bits_of_digest(digest),
{:ok, prefix} <- generate_address(locally_assigned, subnet_id, global_id)
{:ok, prefix} <- generate_address(locally_assigned,
subnet_id,
global_id)
do
{:ok, prefix}
end
@ -34,7 +37,8 @@ defmodule IP.Address.ULA do
end
defp generate_digest(ntp_time, eui) do
with key <- << ntp_time::unsigned-integer-size(64), eui::unsigned-integer-size(64) >>,
with key <- << ntp_time::unsigned-integer-size(64),
eui::unsigned-integer-size(64) >>,
digest <- :crypto.hash(:sha, key),
digest <- :binary.decode_unsigned(digest)
do

View file

@ -386,12 +386,12 @@ defmodule IP.Prefix do
@spec usable(t) :: non_neg_integer
def usable(%Prefix{address: %Address{version: 4}} = prefix) do
space = prefix
|> IP.Prefix.space()
|> Prefix.space()
space - 2
end
def usable(%Prefix{address: %Address{version: 6}} = prefix) do
IP.Prefix.space(prefix)
Prefix.space(prefix)
end
end