Commit graph

145 commits

Author SHA1 Message Date
Steve Purcell
5188e842a9 [servant-foreign] Parameterise type classes with a foreign representation type
We allow a user-specified type to represent the foreign type of haskell
types encountered in the API. This lets users map Integer, Date etc. to
representations other than Text, and have those representations
available in the returned list of Req.

For example, we might want to map a type which has an instance of
Generic to both a foreign type name and a class declaration for that
foreign type such that it can encode/decode itself to JSON. The previous
limitation to a single Text output prevented this case.
2016-03-14 10:34:53 +13:00
Steve Purcell
207f05e759 [servant-foreign] Parameterise Req with a foreign type 2016-03-13 18:35:49 +13:00
Steve Purcell
bfe812f5d9 [servant-foreign] Normalise names of arg field accessors 2016-03-13 17:27:31 +13:00
Denis Redozubov
d8e98a1f16 fix lens export mismatch 2016-03-12 13:59:40 +03:00
Denis Redozubov
36ddf7663a fix 7.8.4 compilation 2016-03-12 12:51:22 +03:00
Denis Redozubov
e5635a044e use newtypes in servant-foreign 2016-03-12 12:51:22 +03:00
Sönke Hahn
8ef4d4543b renaming: Config -> Context 2016-03-07 23:12:24 +08:00
Denis Redozubov
e35b4211c4 update servant-foreign changelog 2016-02-18 09:34:42 +03:00
Denis Redozubov
e6e13fde84 Make servant-foreign code nicer
* non-messy imports
* got rid of most long lines (>80 chars)
* prisms for sum types and newtypes(we use lens anyway, so why not)
* consistent indentation
2016-02-11 15:26:01 +03:00
Sönke Hahn
2176fecfda config: added instances for all interpretations 2016-01-21 17:55:02 +01:00
Julian K. Arni
be36e5b313 Change copyright to servant contributors 2016-01-20 16:58:29 +01:00
Julian K. Arni
bd77b4acba Verb for -mock, -js and -foreign. 2016-01-07 13:47:08 +01:00
Luigy Leon
17fcc25d87 add include header files to extra-source-files 2016-01-04 23:05:05 -05:00
Julian K. Arni
79d4f944a4 less OverlappingInstances noise 2016-01-04 13:09:11 -05:00
Maksymilian Owsianny
721151a32d Added default NoTypes parameter for dynamic languages. 2015-12-02 15:56:56 +00:00
Maksymilian Owsianny
83600d5326 Added myself as co-author. 2015-12-02 14:26:45 +00:00
Maksymilian Owsianny
0f42e0a7f0 Add documentation of 'HasForeignType'. 2015-12-02 14:10:30 +00:00
Maksymilian Owsianny
b6ee20dfe0 Fix to support GHC < 710 2015-12-02 13:02:05 +00:00
Maksymilian Owsianny
e56fc650c2 Added test spec for servant-foreign. 2015-12-02 12:28:04 +00:00
Maksymilian Owsianny
2d8db45907 Moved GenerateList to servant-foreign. 2015-12-02 11:21:37 +00:00
Maksymilian Owsianny
69f09f2622 Added lang parameter. 2015-11-29 04:53:50 +00:00
Maksymilian Owsianny
8932cb242c Add access to types in servant-foreign. 2015-11-28 08:13:26 +00:00
Matthias Fischmann
9b08a05502 Adjust file contents a little. 2015-11-16 18:40:15 +01:00
Matthias Fischmann
a1dcc275eb Just rename the file. 2015-11-16 18:33:35 +01:00
Simon Hengel
4e53e2083b Use tinc on travis 2015-11-05 09:32:13 +08:00
Matt Bray
f6ee02eb91 servant-foreign: fix camelCase
Previous behaviour was a bit shouty (and dashes aren't allowed in JS
variable names):

camelCase ["one", "two", "thirty-three"] => "oneTWOTHIRTY-THREE"

New behaviour:

camelCase ["one", "two", "thirty-three"] => "oneTwoThirtythree"
2015-11-04 11:27:07 +00:00
Matt Bray
aa2b56d08c servant-foreign: add test for camelCase 2015-11-04 11:27:07 +00:00
Julian K. Arni
2a894d861c -Wall fixes 2015-10-13 21:38:13 +02:00
Julian K. Arni
ec55f4b981 Remove Matrix params.
For servant-docs, -foreign, -js, and -mock.
2015-10-13 21:37:07 +02:00
Arian van Putten
568254d5c7 Add entry to changelog 2015-10-07 20:02:46 +02:00
Arian van Putten
4b81f0c77a More test fixes 2015-10-02 15:03:26 +02:00
Arian van Putten
e0fe0a1f39 Add version bounds for text 2015-10-02 14:03:03 +02:00
Arian van Putten
e17987e5ff Convert servant-foreign to use text 2015-10-02 10:23:57 +02:00
Julian K. Arni
4206285e2d CPP NullaryTypeClass 2015-09-23 20:39:46 +02:00
Julian K. Arni
487f323f2f More Werror fixes 2015-09-23 20:30:45 +02:00
Denis Redozubov
7b58f0463a reduce synopsis to make cabal happy 2015-09-23 01:04:14 +03:00
Denis Redozubov
477976e128 update cabal package description
* synopsys
* description
* package version looks consistent with other servant-* packages now
2015-09-22 22:38:29 +03:00
Denis Redozubov
64fc870852 make version/version constraints consistent with other servant-* packages 2015-09-22 22:28:02 +03:00
Denis Redozubov
99b59eac39 NullaryTypeClasses needed for ghc 7.8 2015-09-22 14:47:38 +03:00
Denis Redozubov
897fd8fdfc bump servant-foreign to 0.5 2015-09-22 14:47:32 +03:00
Denis Redozubov
5018a34abd fix Elem type family to enable sane error reporting 2015-09-22 14:02:52 +03:00
Denis Redozubov
b59a62e012 no opinion on valid function names in servant-foreign 2015-09-22 14:02:30 +03:00
Denis Redozubov
7ff9e52a50 CommonGeneratorOptions moved to servant-js 2015-09-22 12:21:04 +03:00
Denis Redozubov
6fa4b55c94 fix build settings for ghc-7.8.4 2015-09-21 21:34:38 +03:00
Denis Redozubov
ce3e4f7193 Extract common code-generation stuff to servant-foreign 2015-09-21 20:59:09 +03:00