Comments (3)
I think we can use ensureNotNull
with toNonEmptyListOrNull
effect {
val nel = ensureNotNull(maybeEmptyList.toNonEmptyListOrNull()) { "List is empty" }
// use nel
}
from arrow.
Sure but it gets rather verbose and doesn't signal intent as clearly, imo. Plus, I don't think it solves the inverse?
from arrow.
Unfortunately, we cannot provide specialized operations in the library for every possible check. @hoc081098's approach is maybe the best one, since it merges the check and the change of type.
from arrow.
Related Issues (20)
- arrow-stack does not specify version of "io.arrow-kt:arrow-optics-ksp-plugin" HOT 2
- Retrofit+Arrow to Ktor Client+Arrow migration HOT 8
- Road to 1.2.3 HOT 7
- ["Request"] DefaultedMap HOT 5
- @optics generates bad code for sealed hierarchies with changing property nullability
- @optics generates bad code when dealing with generic properties in a sealed hierarchy
- @optics generates bad code when dealing with nested generic sealed hierarchies
- ["Documentation"] Ior Knit examples not rendering properly
- autoCloseScope: the order of close method calls is not the same as `AutoCloseable.use` HOT 2
- Tracing reports a swallowed CancellationException warning HOT 7
- Fold restriction not allowing any Function<*> to be returned is too strict HOT 20
- @optics generates bad code for data class with generic named 'S'
- ["Bug"] Arrow core 1.2.4 not compatible with Kotlin WASM JS HOT 3
- ["Request"] Annotate Raise interface with @RaiseDSL HOT 2
- Discussion around the Gradle setup HOT 1
- ["Request"] Resilience Saga allow
- ["Request"] mention `result` computation block API in learning docs
- Update Arrow 2.0.0-alpha.2 misses a dependency HOT 2
- ["BUG"] Arrow Optics, `it` package in lambda
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arrow.