Commit graph

498 commits

Author SHA1 Message Date
Eric Cochran
448a2d3298 Treat negative zero as a number, not a long. (#285)
Updates logic from https://github.com/google/gson/issues/1053
2017-04-20 17:22:06 -05:00
Jake Wharton
b4c43ae771 Merge pull request #283 from square/jwilson.0420.more_kotlin_stuff
Handle nulls symetrically in KotlinJsonAdapter.
2017-04-20 11:08:21 -05:00
jwilson
6112993919 Handle nulls symetrically in KotlinJsonAdapter.
When writing nulls we omit them, and when a value is omitted we assume
it is null.
2017-04-20 08:38:18 -05:00
Jesse Wilson
81bbe870f1 KotlinJsonAdapter (#281)
* Add kotlin-module with support for Kotlin data classes

* Naming and style changes to KotlinJsonAdapter.

Biggest changes:

 * Attempt to support regular classes and data classes
 * Avoid parameter hashing when indexing is sufficient for
   constructor parameters
2017-04-18 23:51:37 -04:00
Jesse Wilson
8c18caf574 Add a test to confirm types are canonicalized. (#278)
Obsoletes https://github.com/square/moshi/pull/129/files
2017-04-16 12:15:53 -04:00
Eric Cochran
11dbc3c50b Fix @ToJson IAE message. (#275) 2017-03-28 05:57:53 -04:00
Eric Cochran
718f832864 Allow easy delegates in adapter methods. (#272) 2017-03-27 21:48:19 -04:00
Eric Cochran
1b634bbb74 Update adapter methods ISE message. (#273) 2017-03-27 19:25:31 -04:00
Jake Wharton
05b0a46961 Add error-prone compiler. (#259)
* Fix error-prone warning

* Add error-prone compiler.

* Suppress warning about calling getClass() on annotation.
2017-02-14 22:28:24 -05:00
Jesse Wilson
b6ebe53ffb Merge pull request #257 from square/eric/readme-1.4.0
Fix README version number
2017-02-05 17:49:23 -05:00
Eric Cochran
1e37d8dc42 Fix README version number 2017-02-05 14:38:05 -08:00
Jesse Wilson
af09de142d Merge pull request #254 from square/eric/readme
Remove package API from README
2017-02-04 19:40:01 -05:00
Eric Cochran
0a70c5c4ab Remove package API from README
Types.createJsonQualifierImplementation() is not a public API.
2017-02-04 15:39:35 -08:00
jwilson
49092ece96 [maven-release-plugin] prepare for next development iteration 2017-02-04 15:20:11 -05:00
jwilson
d075a3e56a [maven-release-plugin] prepare release moshi-parent-1.4.0 2017-02-04 15:20:05 -05:00
jwilson
c8c7bb8f9b Update changelog for 1.4.0. 2017-02-04 15:17:34 -05:00
Jesse Wilson
921d949a76 Merge pull request #252 from square/jwilson.0204.use_fromJsonObject
Use readJsonValue() in DefaultOnDataMismatchAdapter.
2017-02-04 15:13:04 -05:00
jwilson
559e3a22ea Use readJsonValue() in DefaultOnDataMismatchAdapter. 2017-02-04 14:22:24 -05:00
Jesse Wilson
aebd860d1c Merge pull request #250 from NightlyNexus/eric/readJsonValue
Add JsonReader.readJsonValue
2017-02-04 14:14:57 -05:00
jwilson
d03ec8e47f Merge branch 'eyedol-update-readme-with-jsonarray-example'
* eyedol-update-readme-with-jsonarray-example:
  Update doc with how to parse JSON Arrays
2017-02-04 14:13:12 -05:00
Henry Addo
a92509bff2 Update doc with how to parse JSON Arrays 2017-02-04 14:13:05 -05:00
Eric Cochran
332adcadf5 Add JsonReader.readJsonValue 2017-02-03 20:29:59 -08:00
Jake Wharton
7013651dd5 Merge pull request #249 from square/jwilson.0203.dont_mispel
Fix a typo in the name of JsonUtf8Writer.
2017-02-03 13:06:56 -05:00
Jesse Wilson
4d6a4c7383 Merge pull request #248 from square/jwilson.0202.recover_from_failure_example
Example adapter that recovers from JsonDataExceptions.
2017-02-03 13:02:54 -05:00
jwilson
5ea65a5f95 Fix a typo in the name of JsonUtf8Writer. 2017-02-03 13:02:18 -05:00
jwilson
af6ff5e6e3 Example adapter that recovers from JsonDataExceptions. 2017-02-02 23:24:08 -05:00
Jesse Wilson
81aed974c6 Merge pull request #247 from square/jwilson.0202.rename_teh_things
Rename toJsonObject() to toJsonValue(), fromJsonObject() to fromJsonV…
2017-02-02 22:06:15 -05:00
jwilson
e9d8538ec3 Rename toJsonObject() to toJsonValue(), fromJsonObject() to fromJsonValue().
Also rename the JsonReader and JsonWriter implementations.
2017-02-02 21:28:38 -05:00
Jesse Wilson
5b5a1a6b9b Merge pull request #236 from NightlyNexus/eric/factory-samples
Add Unwrap JsonAdapter.Factory sample
2017-02-02 09:12:06 -05:00
Jesse Wilson
3af58f4a43 Merge pull request #245 from NightlyNexus/eric/platform-fields
Fix isPlatformType
2017-02-02 09:10:45 -05:00
Jesse Wilson
cf087753ff Merge pull request #246 from square/jwilson.0202.numbers_ii
Use BigDecimal to encode exotic number types.
2017-02-02 08:27:47 -05:00
jwilson
fdaecb9fb8 Use BigDecimal to encode exotic number types.
Previously we'd retain whatever types the caller passed in. This was
potentially problematic for non-immutable numeric types like AtomicInteger.
2017-02-02 08:27:07 -05:00
Eric Cochran
9420b6493c Fix isPlatformType
createFieldBindings should not take the allowed platform types into
account.
2017-02-01 18:37:44 -08:00
Eric Cochran
832ae4b34f Add Unwrap JsonAdapter.Factory sample 2017-01-31 18:24:42 -08:00
Jesse Wilson
3c23da50cf Merge pull request #242 from NightlyNexus/eric/nextAnnotations
Add Types.nextAnnotations
2017-01-31 21:08:14 -05:00
Jesse Wilson
ace5979fcf Merge pull request #243 from NightlyNexus/eric/duplicate-key-tests
Add tests for duplicate JSON keys
2017-01-31 21:05:17 -05:00
Eric Cochran
9417cd8207 Add tests for duplicate JSON keys 2017-01-31 14:44:17 -08:00
Eric Cochran
05b594a26c Add Types.nextAnnotations 2017-01-31 11:18:13 -08:00
Jesse Wilson
ac325c0c68 Merge pull request #241 from NightlyNexus/eric/types-tests
Add arrayOf, subtypeOf, supertypeOf tests
2017-01-31 08:05:54 -05:00
Eric Cochran
6a2981108f Add arrayOf, subtypeOf, supertypeOf tests 2017-01-30 23:03:20 -08:00
Jesse Wilson
ed164fd806 Merge pull request #235 from NightlyNexus/master
Improve error message for qualified platform types
2017-01-30 20:56:34 -05:00
Jesse Wilson
14a430cb58 Merge pull request #237 from NightlyNexus/patch-1
Add Types.createJsonQualifierImplementation
2017-01-30 20:55:00 -05:00
Eric Cochran
d27eaa161a Add adapter(Type, Class<? extends Annotation>) 2017-01-30 11:19:40 -08:00
Jake Wharton
7b39133748 Merge pull request #240 from square/jwilson.0129.promote_value_to_name
Implement promoteValueToName() for ObjectJsonWriter.
2017-01-29 23:01:46 -05:00
jwilson
75b549f1ff Implement promoteValueToName() for ObjectJsonWriter.
This was renamed from promoteNameToValue(). Also run the test on both types of
codecs and fix some implementation issues that uncovered.
2017-01-29 22:47:59 -05:00
Jake Wharton
b4367899cd Merge pull request #238 from square/jwilson.0129.serializeNulls
New JsonAdapter.serializeNulls() method.
2017-01-29 22:25:39 -05:00
jwilson
b338d1e7ed New JsonAdapter.serializeNulls() method.
This makes it possible to force nulls into the document without
much fuss.
2017-01-29 22:18:12 -05:00
Eric Cochran
99c1cd0ffd Improve error message for qualified platform types 2017-01-28 16:47:22 -08:00
Jesse Wilson
99479682ba Merge pull request #233 from square/jwilson.0124.promote_stacks
Promote stack management to the JsonReader/JsonWriter supertypes.
2017-01-25 22:26:30 -05:00
jwilson
4b7ced70e4 Promote stack management to the JsonReader/JsonWriter supertypes.
It turns out that we can reuse a lot of code with inheritance. Who knew?
2017-01-25 22:25:19 -05:00