Comments (5)
Are there practical use cases for this? The refined module makes sense to me, but this seems to duplicate the role of other (less clunky) validation mechanisms.
I agree that this doesn't seem to fit nicely in generic
, and while it'd only take a very simple macro to add it to core
, I'm not sure we want to give up circe's macro-free status for something without a clear payoff.
from circe.
I typically use these when the underlying protocol expects a constant value. This allows to put / expect constant values in JSON objects, while still using auto-codecs.
from circe.
If you're going to add support for refined, you could accomplish the same with
case class CC(
i: Int,
message: String @@ Equal[Witness.`"test"`.T]
)
from circe.
@fthomas I agree, it's nice to have the simple Witness.
"test".T
too.
I don't see it as a validation mechanism... It's just a way to put constants in the output.
These would just be codecs for singleton types, that are around anyway.
from circe.
This is resolved by #162, which is now in master.
from circe.
Related Issues (20)
- Maximal number of successive inlines (32) exceeded, Maybe this is caused by a recursive inline method? HOT 7
- Circe cannot decode output from auto-derived codec on Scala 3 HOT 1
- Scala3 derivation incorrectly assumes collection type for generic class HOT 4
- Stack overflow on 0.14.6 HOT 4
- Unexpected derivation of Encoder[Option[T]]
- Modifying JsonObject using ACursor/HCursor performance hit due to megamorphic calls HOT 1
- Invalid Json tree with `null` (java) values, NPE in printer HOT 1
- a problem with current derivations HOT 7
- Properly parse JSON object key with quotes HOT 1
- usage of ISO_ZONED_DATE_TIME as default formatter in encoder HOT 3
- Scala 2.13: derivedConfiguratedEncoder becomes unconfigured under some conditions HOT 1
- Expected `json` string interpolator from io.circe.literal to be able to interpolate variable inside of value strings HOT 3
- Invalid pathToRoot for `missing required field` validation error HOT 3
- flaky test PointerInterpolatorSuite HOT 2
- `StackOverflowError` if local class since 0.14.7 with Scala 3 HOT 2
- Adjust contrast of website nav menu colours HOT 1
- Refined version update for JS and JVM HOT 4
- Move refined into its own repo with its own release cycle HOT 3
- Scala 3 Inconsistent Application of Configuration Discriminator HOT 2
- Decoder error message: loss of information HOT 1
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 circe.