Changelog for row-types-0.4.0.0
0.4.0.0 [2020-05-20]
- Renamed
toNativetotoNativeGeneralandtoNativeExacttotoNativefor records and likewise forfromNativefor variants. - Added a type family
NativeRowwhich, when given any generic type that can go throughfromNative, is equal to the row-type of the resulting record/variant. Note thatNativeRowis defined separately (and differently!) for records vs variants, so it is exported at theData.Row.Records/Variantslevel but not atData.Row. - Added
coerceRecandcoerceVarto coerce the row-types of records and variants respectively. - Exposed
BiForallinData.Row,Data.Row.Records, andData.Row.Variants - (Internal) Rewrote internal
Genericcode to use an associated type family instead of a standalone one.
Note: GHC 8.2 and earlier are no longer supported in row-types 0.4.0.0.
0.3.1.0 [2020-01-29]
- Added "native" classes as exports for
RecordsandVariants(e.g.,ToNative,FromNative) - Added more example hs files.
0.3.0.0 [2019-05-28]
- Added
HasFieldandAsConstructorinstances (from generic-lens) forRecandVarrespectively. - Added record-overwrite function
.//. - Added
Genericinstances for Rec and Var. - Added mapHas entailment connecting
Map f r .! ltor .! l. - Changed
Forall2toBiForall.- Added
BiConstrainttype class for use withBiForall.
- Added
- Added
Aptype family that functions asapover rows using zipping.- Added
mapFto map a function over a record with anAprow.
- Added
- Added
toDynamicMapandfromDynamicMapas functions to convert betweenRecs andHashMap Text Dynamics. - Added
toNativeExactto convert aRecto a native Haskell type without losing any fields. - Added
toNative,fromNative, andfromNativeExactforVars. - Added
unSingletonforVars.- Removed
unSingletonfromData.Rowexport list.
- Removed
- Tightened the type signatures of
focus(for bothRecandVar) to improve type inference when usingfocusin lens-like situations.
0.2.3.1 [2018-07-11]
- Fix a bug in the
Showinstance forRec.
0.2.3.0 [2018-07-02]
- Update the
Showinstance forRecto render valid code. - Add
toNativeandfromNativefunctions for records to easily convert between Haskell records and row-types records. - Make type families in
Data.Row.Internalpolykinded (thanks James Yu!)
0.2.1.0 [2018-03-20]
- Bug Fix: The type of
updatefor bothRecandVarnow enforce the newly inserted type is correct. - New: Add
restrictandsplitforVars.- Removed
restrictfromData.Rowexport list.
- Removed
- New: Added support for universally quantified rows:
mapForallanduniqueMap. - Added very simple test suite.
0.2.0.0 [2018-02-12]
- Initial Release