git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Use Types.Proxy.Proxy instead of Data.Generic.Proxy

This fixes #1573. It changes the deriving mechanism to use `Types.Proxy.Proxy` from purescript-proxy instead of `Data.Generic.Proxy` from purescript-generics. This requires the changes in purescript/purescript-generics#19.

commita284c4cf25163ecefbc0eddd8410eb9bf630751e authorTaylor Fausak <taylor@fausak.me> dateWed 18 Nov 2015, 07:04 (11 years ago) parent9fc5b58
2 files changed+5−1
CONTRIBUTORS.md+1 src/Language/PureScript/Sugar/TypeClasses/Deriving.hs+4−1
CONTRIBUTORS.md+1
@@ -57,6 +57,7 @@ This file lists the contributors to the PureScript compiler project, and the ter
5757- [@senju](https://github.com/senju) - My existing contributions and all future contributions until further notice are Copyright senju, and are licensed to the owners and users of the PureScript compiler project under the terms of the [MIT license](http://opensource.org/licenses/MIT).
5858<http://opensource.org/licenses/MIT>.
5959- [@soupi](https://github.com/soupi) (Gil Mizrahi) My existing contributions and all future contributions until further notice are Copyright Gil Mizrahi, and are licensed to the owners and users of the PureScript compiler project under the terms of the [MIT license](http://opensource.org/licenses/MIT).
60+- [@tfausak](https://github.com/tfausak) (Taylor Fausak) My existing contributions and all future contributions until further notice are Copyright Taylor Fausak, and are licensed to the owners and users of the PureScript compiler project under the terms of the [MIT license](http://opensource.org/licenses/MIT).
6061
6162### Companies
6263
src/Language/PureScript/Sugar/TypeClasses/Deriving.hs+4−1
@@ -73,6 +73,9 @@ dataGeneric = ModuleName [ ProperName "Data", ProperName "Generic" ]
7373dataMaybe :: ModuleName
7474dataMaybe = ModuleName [ ProperName "Data", ProperName "Maybe" ]
7575
76+typesProxy :: ModuleName
77+typesProxy = ModuleName [ ProperName "Types", ProperName "Proxy" ]
78+
7679deriveGeneric :: (Functor m, MonadError MultipleErrors m, MonadSupply m) => ModuleName -> [Declaration] -> ProperName -> [Type] -> m [Declaration]
7780deriveGeneric mn ds tyConNm args = do
7881 tyCon <- findTypeDecl tyConNm ds
@@ -132,7 +135,7 @@ mkSignatureFunction mn (DataDeclaration _ name tyArgs args) classArgs = lamNull
132135 mkSigRec = App (Constructor (Qualified (Just dataGeneric) (ProperName "SigRecord"))) . ArrayLiteral
133136
134137 proxy :: Type -> Type
135− proxy = TypeApp (TypeConstructor (Qualified (Just dataGeneric) (ProperName "Proxy")))
138+ proxy = TypeApp (TypeConstructor (Qualified (Just typesProxy) (ProperName "Proxy")))
136139
137140 mkProdClause :: (ProperName, [Type]) -> Expr
138141 mkProdClause (ctorName, tys) = ObjectLiteral [ ("sigConstructor", StringLiteral (showQualified runProperName (Qualified (Just mn) ctorName)))