Simplified type synonyms for Which. Added Reinterpreted constraint synonym.
2.0.0.0
Breaking change: the prime (xxx’) version of functions are now consistently the simpler or non-polymorphic version.
This is more consistent with ‘Control.Lens’ as well.
This means the following are swapped:
replace, replace'
replaceL, replaceL'
replaceTag, replaceTag'
replaceN, replaceN'
amend, amend'
amendL, amendL'
amendN, amendN'
Breaking change: Removed proxy argument from ‘fetchL/Tag/N’, ‘replaceXXX’, ‘selectL/Tag/N’, ‘amendXXX’, ‘pickL/Tag/N’, ‘trialL/Tag/N’
relying soley on TypeApplications and now requiring AllowAmbiguousTypes.
The “Proxy” is also removed from the Read/Show serialized format.
Rearranged type variables in fetchL/N, replaceL/Tag/N, ‘pickL/Tag/N’, ‘trialL/Tag/N’ type parameters,
so the type variable ordering is consistently label, orig to change, smaller to larger, ie. ‘l/n’, ‘x’, ‘y’, ‘xs’
1.3.0.0
Removed splitting operations added in 1.2.0.0
added xxxTag version of label operations that also automatically untags the field.
1.2.0.3
PolyKinds for Which
Removed cabal upper bounds
1.2.0.2
Added ‘insert’/‘remove’ for GHC < 8.2
Removed type functions ‘UniqueMemberAt’, ‘MaybeUniqueMemberAt’
1.2.0.1
‘insert’/‘remove’ is not available in GHC 8.2 onwards.
1.2.0.0
Rerranged type variable for xxxL and xxxN functions so that the
@x@ inferrred from label @l@ or index @n@ is after @proxy@.
This affects fetch[L|N], replace[L|N], replace[L|N]', pick[L|N]
Depends on at least containers-0.5.8.2 for Data.Sequence.insertAt
Removed zilch so Which '[] is uninhabited like Data.Void.Void, making ‘impossible’ safe to use.
Removed Monoid and changed Show, Read and Generic instances for Which '[] to be partial
just like Data.Void.Void.
Added instance Reduce (Which ’[]) (Switcher c ’[] r), which follows from ‘impossible’.
0.10.0.0
Renamed Switch to Switcher. Switch is now a type synonym for switch constraints
Added CasesResult type family to help infer the result of cases
Added Semigroup and Monoid instances for all Many xs.
Added Maybe versions of trial, and reinterpret
Renamed reinterpetN to reinterpretN'
Renamed impossible to zilch.
Allowed reintepreting and diversifying zilch to zilch
Removed zipped type variable from Amend constraints.
Removed r type variable from Reduce typeclass.
Rearranged type variables in fetch, replace, pick, trial, Diversify type parameters,
so the type variable ordering is consistently smaller to larger, ie. ‘x’, ‘xs’, ‘branch’, ‘tree’
Added diversify' for allowing rearranging the types only.
0.9.0.1
Fixed GHC 8.2.1 test failure due to changed TypeRep show instance.
0.9.0.0
Breaking changes: Renamed Many.sliceL/R to Many.viewf/b
Renamed TypeLevel.Internal.MissingImpl to IsUniqueImpl.
Added postifx’ with SnocUnique and append’ with AppendUnique.
Added Semigroup & Monoid instances for Many '[] and Which '[]
Fixed GHC 8.2 compile error with importing GHC.Prim (Any)
0.8.1.0
Added NFData instance for Which.
Forgot to expose Many.sliceL and Many.sliceR.
0.8.0.0
Changed internal representation to (Data.Seq Any) for a further 2x append speedup.
Added NFData instance for Many.
0.7.0.0
Removed NOINLINE pragmas.
Changed internal representation to (Int, Data.IntMap Any) for a 2.5x append speedup.
0.6.0.0
Moved lens to data-diverse-lens
0.5.0.0
Renamed type level functions module from Type to TypeLevel