| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Unison.Typechecker.Variance
Documentation
Instances
| Show v => Show (Polarity v) Source # | |
| Eq v => Eq (Polarity v) Source # | |
| Ord v => Ord (Polarity v) Source # | |
Defined in Unison.Typechecker.Variance | |
collectVariance :: Var v => Map Reference [Variance] -> Map Reference [v] -> Type v a -> Map v [Polarity v] Source #
collectDeclVariance :: (Var v, Show a) => Map Reference [Variance] -> Map Reference [v] -> DataDeclaration v a -> Map v [Polarity v] Source #
inferDeclGroupVariance :: (Var v, Show a) => Map Reference [Variance] -> Map Reference (DataDeclaration v a) -> Map Reference [Variance] Source #
freshenGroup :: Var v => Map Reference (DataDeclaration v a) -> Map Reference ([v], DataDeclaration v a) Source #
freshDecl :: Var v => DataDeclaration v a -> State (Set v) ([v], DataDeclaration v a) Source #
inferDeclVariances :: (Var v, Show a) => Map Reference [Variance] -> Map Reference (DataDeclaration v a) -> Map Reference [Variance] Source #
fromTypeLookup :: (Var v, Show a) => TypeLookup v a -> Map Reference [Variance] Source #