Commit graph

491 commits

Author SHA1 Message Date
jwilson
795f262106 Map adapter.
Limited to string keys for now.
2015-03-23 23:15:03 -04:00
Jesse Wilson
af10c97e42 Merge pull request #19 from square/jwilson_0322_classadapter
Big start into ClassAdapter.
2015-03-23 14:45:04 -04:00
jwilson
08becc119a Big start into ClassAdapter.
This borrows from Gson's UnsafeAllocator. I didn't actually
borrow much from Gson's reflective type adapter, but I'll need
to review that in follow up to see if I forgot anything that
Gson covers.

Most interesting design decision here is that fields are
serialized in alphabetical order. Also we're pretty nice
around detecting field collisiosn and failing early.
2015-03-23 00:13:04 -04:00
Jesse Wilson
1b9658dca3 Merge pull request #18 from square/jwilson_0103_linkedhashtreemap
Import Gson's LinkedHashTreeMap.
2015-01-04 11:07:08 -05:00
Jesse Wilson
5ff6b3dde9 Import Gson's LinkedHashTreeMap. 2015-01-04 11:01:39 -05:00
Jesse Wilson
b106c8610d Merge pull request #17 from square/jw/path-bugs
Fix bugs in getPath() with arrays of objects and arrays of arrays.
2014-12-22 16:10:02 -05:00
Jesse Wilson
67b3160d27 Merge pull request #16 from square/jw/source
Enable JsonReader with Source.
2014-12-22 16:09:38 -05:00
Jake Wharton
963e5939e9 Fix bugs in getPath() with arrays of objects and arrays of arrays.
Original commit: Gson r1303 by Jesse Wilson.
2014-12-22 12:34:27 -08:00
Jake Wharton
26f76806bc Enable JsonReader with Source. 2014-12-22 12:29:56 -08:00
Jesse Wilson
4bc6d43d74 Merge pull request #15 from square/jw/dep-updates
Update Okio, JUnit, and AssertJ to latest.
2014-12-22 13:54:14 -05:00
Jake Wharton
f6cee31e78 Update Okio, JUnit, and AssertJ to latest. 2014-12-22 10:22:01 -08:00
Jesse Wilson
5ec3d5e9e1 Merge pull request #14 from square/jw/new-redirect-link
Use new central artifact redirect link.
2014-11-19 17:43:09 -05:00
Jake Wharton
baa3a8046a Use new central artifact redirect link. 2014-11-19 14:24:33 -08:00
Scott Blum
8fe0b22fba Merge pull request #13 from square/scottb/types
Remove TypeLiteral, test fixes.
2014-08-19 17:04:22 -04:00
Scott Blum
467e7cced8 Remove TypeLiteral, test fixes. 2014-08-19 17:03:44 -04:00
Scott Blum
b072894ebf Merge pull request #12 from square/scottb/primitive
Add the missing primitive converters.
2014-08-15 16:09:52 -04:00
Scott Blum
9a713f80ed Add comments, fix nits 2014-08-14 01:38:44 -04:00
Scott Blum
1e4f375e75 Finish primitive adapters, add tests. 2014-08-13 19:40:09 -04:00
Scott Blum
806767169b Add the missing primitive converters. 2014-08-12 19:14:06 -04:00
Jake Wharton
c11ad0c2e6 Merge pull request #11 from square/scottb/fail
Fix a few missing 'fail()' on expected exceptions
2014-08-12 13:40:26 -07:00
Scott Blum
59af0357bb Fix a few missing 'fail()' on expected exceptions 2014-08-12 15:31:12 -04:00
Jake Wharton
9eb174c52e Merge pull request #10 from square/jwilson_0812_arrays
Implement an array adapter.
2014-08-12 08:22:03 -07:00
Jesse Wilson
a067ecc55d Implement an array adapter. 2014-08-12 09:40:19 -04:00
Jake Wharton
8a613f5508 Merge pull request #9 from square/jwilson_0811_collections
CollectionsJsonAdapter.
2014-08-11 20:39:11 -07:00
Jesse Wilson
290e4f737a CollectionsJsonAdapter. 2014-08-11 21:16:35 -04:00
Jesse Wilson
ccac44ee3b Merge pull request #7 from square/jw/okio-writer
Always buffer sink.
2014-08-11 15:05:25 -04:00
Jake Wharton
64155a46b2 Always buffer sink. 2014-08-11 10:51:51 -07:00
Jesse Wilson
b319ecd62a Merge pull request #6 from square/jw/okio-writer
Convert JsonWriter to use Okio Sink.
2014-08-11 13:34:23 -04:00
Jake Wharton
ba5479cf11 Convert JsonWriter to use Okio Sink. 2014-08-11 09:23:37 -07:00
Jake Wharton
e7f3fce452 Merge pull request #5 from square/jwilson_0811_types
Import Gson's type resolver.
2014-08-11 08:50:07 -07:00
Jesse Wilson
b6e26fd606 Import Gson's type resolver. 2014-08-11 09:28:10 -04:00
Jesse Wilson
4f3afa9564 Merge pull request #4 from square/jwilson_0810_moshi
Initial JsonAdapter structure.
2014-08-11 08:37:30 -04:00
Jesse Wilson
93eddc9069 Initial JsonAdapter structure.
This is similar to the way Gson does its type adapters: factories that
can delegate and compose.

It's different because annotations are fundamental to the design.

It's also different because there are no APIs to convert to and from
JSON on the central object: instead callers must get the JSON adapter
they're interested in and do that there. This is potentially more
efficient because applications can hold the adapter they need.
2014-08-11 08:37:13 -04:00
Jake Wharton
46dd2a49c2 Merge pull request #3 from square/jwilson_0810_indexOfElement
Use indexOfElement in JsonReader.
2014-08-09 22:43:43 -07:00
Jesse Wilson
ac1b1027f8 Use indexOfElement in JsonReader.
This means we don't need to re-navigate through the segments
for every single character. Should be a small performance win.
2014-08-10 01:04:56 -04:00
Jesse Wilson
12243bc6fc Merge pull request #2 from square/jwilson_0809_momoshi
Make JsonReader and JsonWriter our own.
2014-08-10 00:13:04 -04:00
Jesse Wilson
083d451e5c Make JsonReader and JsonWriter our own.
Drop proprietary Gson features (non-execute prefix, HTML safe chars).
Don't serialize nulls by default.
Add a String constructor to JsonReader.
Begin to migrate JsonReader to using Okio's buffer.
2014-08-10 00:13:05 -04:00
Jake Wharton
d69af822a0 Merge pull request #1 from square/jwilson_0809_hello_moshi
Set up the moshi project.
2014-08-09 14:10:01 -07:00
Jesse Wilson
2a43606b65 Import JsonReader and JsonWriter from Gson. 2014-08-09 12:20:43 -04:00
Jesse Wilson
ff08c841f1 Basic project structure. 2014-08-09 12:19:29 -04:00
Jesse Wilson
d250cad896 Initial commit 2014-08-09 11:58:42 -04:00