spartanz / schemaz

A purely-functional library for defining type-safe schemas for algebraic data types, providing free generators, SQL queries, JSON codecs, binary codecs, and migration from this schema definition
https://spartanz.github.io/schemaz
Apache License 2.0
164 stars 18 forks source link

Make things simpler by pulling isos out of RecordF and UnionF #63

Closed vil1 closed 5 years ago

vil1 commented 5 years ago

This makes RecordF and UnionF simple wrappers around products (resp. records) by removing the iso fields from them.

Beside simplifying some derivation implementations, it might open the way to schema serialization!

codecov-io commented 5 years ago

Codecov Report

:exclamation: No coverage uploaded for pull request base (prototyping@4e33c69). Click here to learn what that means. The diff coverage is 80.76%.

Impacted file tree graph

@@              Coverage Diff               @@
##             prototyping      #63   +/-   ##
==============================================
  Coverage               ?   70.54%           
==============================================
  Files                  ?       18           
  Lines                  ?      516           
  Branches               ?       10           
==============================================
  Hits                   ?      364           
  Misses                 ?      152           
  Partials               ?        0
Impacted Files Coverage Δ
modules/scalacheck/src/main/scala/GenModule.scala 90% <ø> (ø)
...ules/play-json/src/main/scala/PlayJsonModule.scala 0% <0%> (ø)
modules/core/src/main/scala/SchemaModule.scala 81.96% <100%> (ø)
modules/core/src/main/scala/migrations.scala 33.33% <100%> (ø)
...dules/tests/src/main/scala/MigrationExamples.scala 83.78% <100%> (ø)
modules/tests/src/main/scala/Person.scala 100% <100%> (ø)
modules/core/src/main/scala/Json.scala 92.85% <100%> (ø)
...es/tests/src/main/scala/SchemaModuleExamples.scala 90.9% <100%> (ø)
...odules/generic/src/main/scala/GenericAlgebra.scala 92.3% <100%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 4e33c69...8ac6705. Read the comment docs.