Multicast join to a group without a source filter.
Classless Inter-Domain Routing address, which represents an IP address and its routing prefix.
Immutable and safe representation of an IP address, either V4 or V6.
Immutable and safe representation of an IP address, either V4 or V6.
IpAddress
instances are constructed in a few different ways:
- via IpAddress("127.0.0.1")
, which parses a string representation of the IP and returns an Option[IpAddress]
- via IpAddress.fromBytes(arr)
, which returns an IP address if the supplied array is either exactly 4 bytes or exactly 16 bytes
- via literal syntax like ip"127.0.0.1"
, which returns an IpAddress
and fails to *compile* if the IP is invalid.
There are two subtypes of IpAddress
-- Ipv4Address and Ipv6Address. Each of these subtypes have a richer
API than IpAddress
and it is often useful to use those types directly, for example if your use case requires a V6 address.
It is safe to pattern match on IpAddress
to access Ipv4Address
or Ipv6Address
directly, or alternatively, you can use fold.
If using IpAddress
on the JVM, you can call toInetAddress
to convert the address to a java.net.InetAddress
, for use
with networking libraries. This method does not exist on the Scala.js version.
Representation of an IPv4 address that works on both the JVM and Scala.js.
Representation of an IPv6 address that works on both the JVM and Scala.js.
Witness that the wrapped address of type A
is a multicast address.
Witness that the wrapped address of type A
is a multicast address.
An instance of Multicast
is typically created by either calling Multicast.apply
or by using
the asMulticast
method on IpAddress
.
Represents a join of a multicast group.
Represents a join of a multicast group.
This is represented as an ADT consisting of two constructors, AnySourceMulticastJoin and SourceSpecificMulticastJoin. These constructors are provided as top level types to allow domain modeling where a specific join type is required. The address type is parameterized for a similar reason -- to allow domain modeling where a specific address type is required.
A multicast join of the specified type and a port number.
A multicast join of the specified type and a port number. Used to describe UDP join of a multicast group.
TCP or UDP port number.
An IP address of the specified type and a port number.
An IP address of the specified type and a port number. Used to describe the source or destination of a socket.
Witnesses that the wrapped address of type A
is a source specific multicast address.
Witnesses that the wrapped address of type A
is a source specific multicast address.
An instance of SourceSpecificMulticast
is typically created by either calling Multicast.apply
or by using the asSourceSpecificMulticast
method on IpAddress
.
Multicast join to a group from the specified source.
Macros that support literal string interpolators.