NetAddr.meet

You're seeing just the function meet, go back to NetAddr module for more information.
Link to this function

meet(netaddr1, netaddr2)

View Source

Specs

meet(t(), t()) :: t() | nil

Calculate the meet, or greatest lower bound, of two netaddrs. If the two provided netaddrs overlap, this function returns the lowest, smallest netaddr. Otherwise, it returns nil.

Examples

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/26), ~p(192.0.2.192/26))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/26), ~p(192.0.2.128/25))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/26), ~p(192.0.2.64/26))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.7/26), ~p(192.0.2.78/26))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.64/26), ~p(192.0.2.128/26))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/24), ~p(192.0.2.128/25))
nil

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/24), ~p(192.0.2.0/25))
%NetAddr.IPv4{address: <<192,0,2,0>>, length: 25}

iex> use NetAddr
iex> NetAddr.meet(~p(192.0.2.0/24), ~p(192.0.2.0/24))
%NetAddr.IPv4{address: <<192,0,2,0>>, length: 24}