Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/comcast/ip4s
Defines immutable, safe data structures for describing IP addresses, multicast joins, socket addresses and similar IP & network related data types
https://github.com/comcast/ip4s
functional-programming scala scalajs
Last synced: 5 days ago
JSON representation
Defines immutable, safe data structures for describing IP addresses, multicast joins, socket addresses and similar IP & network related data types
- Host: GitHub
- URL: https://github.com/comcast/ip4s
- Owner: Comcast
- License: apache-2.0
- Created: 2018-06-20T12:32:06.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2024-11-19T13:53:23.000Z (about 1 month ago)
- Last Synced: 2024-12-14T14:05:22.195Z (12 days ago)
- Topics: functional-programming, scala, scalajs
- Language: Scala
- Homepage:
- Size: 1.22 MB
- Stars: 222
- Watchers: 10
- Forks: 24
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![Published Artifact](https://img.shields.io/maven-central/v/com.comcast/ip4s-core_3.svg)](http://search.maven.org/#search%7Cga%7C1%7Cip4s-core_3)
[![javadoc](https://javadoc.io/badge2/com.comcast/ip4s-core_3/javadoc.svg)](https://javadoc.io/doc/com.comcast/ip4s-core_3)ip4s: IP Addresses for Scala, Scala.js & Scala Native
=====================================================This project defines immutable, safe data structures for describing IP addresses, multicast joins, socket addresses and similar IP & network related data types.
There are two defining characteristics of this project that make it different from other similar projects:
- all data types are immutable and every function/method is referentially transparent (e.g., no accidental DNS lookups by calling `InetAddress.getByName(...)`)
- published for Scala, Scala.js and Scala NativeSee the [guide](docs/guide.md) and [ScalaDoc](https://javadoc.io/doc/com.comcast/ip4s-core_3) for more details.
## Getting Binaries
This library is published on Maven Central under group id `com.comcast` and artifact id `ip4s-core_${scalaBinaryVersion}`. Add the following to your SBT build:
```scala
libraryDependencies += "com.comcast" %% "ip4s-core" % "version"
```## Interop
As of 1.4, ip4s depends on cats and provides type class instances directly in data type companion objects. For Scalaz support, we recommend [shims](https://github.com/djspiewak/shims).
## Copyright and License
This project is made available under the [Apache License, Version 2.0](LICENSE). Copyright information can be found in [NOTICE](NOTICE).
## Code of Conduct
See the [Code of Conduct](CODE_OF_CONDUCT.md).