summaryrefslogtreecommitdiffstats
path: root/base/json/json_value_converter.h
Commit message (Collapse)AuthorAgeFilesLines
* Added support for parsing out data from simple repetitive values that should ↵zelidrag@chromium.org2012-05-031-0/+51
| | | | | | | | | | | not be represented with class/structs. BUG=chromium-os:30217 TEST=JSONValueConverterTest.* Review URL: https://chromiumcodereview.appspot.com/10354015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135179 0039d316-1c4b-4281-b951-d872f2087c98
* JSONValueConverter changes for custom base::Value filed parsing.zelidrag@chromium.org2012-04-131-0/+30
| | | | | | | | | | | | chanegs approved in http://codereview.chromium.org/10006023/ BUG=chromium-os:29052 TEST=JSONValueConverterTest.* TBR=willchan Review URL: https://chromiumcodereview.appspot.com/10066031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132101 0039d316-1c4b-4281-b951-d872f2087c98
* Remove reinterpret_cast on JSONValueConvertertzik@chromium.org2012-01-271-10/+11
| | | | | | | | | | BUG=None TEST='JSONValueConverterTest.*' Review URL: http://codereview.chromium.org/9289040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119393 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a potential memory leak bug.mukai@chromium.org2012-01-261-6/+6
| | | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/9113075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119269 0039d316-1c4b-4281-b951-d872f2087c98
* Use ScopedVector instead of std::vector in case of repeated messages.mukai@chromium.org2012-01-141-33/+33
| | | | | | | | | | | | | | | During using this library, I realized that we want to use DISALLOW_COPY_AND_ASSIGN for the messages and RepeatedMessageConverter is inconsistent with such ones because it uses a copy constructor as "push_back(NestedType())". Then I now think to use ScopedVector. BUG=109375 TEST=passed locally Review URL: http://codereview.chromium.org/9187047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117786 0039d316-1c4b-4281-b951-d872f2087c98
* Add custom field converter to JSONValueConverter.mukai@chromium.org2012-01-131-0/+48
| | | | | | | | | | | | | | | | In the real JSON results, sometimes string value does not literally mean a string, but labels (enum), URLs, or timestamps. Custom field accepts those string values and converting functions for such fields. See http://codereview.chromium.org/9147060 for the real use cases. BUG=109375 TEST=passed Review URL: http://codereview.chromium.org/9184002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117580 0039d316-1c4b-4281-b951-d872f2087c98
* Returns a bool for JSONValueConverter::Convert()mukai@chromium.org2012-01-051-26/+74
| | | | | | | | | | | | | | | | | As I see a real use scenario in chrome/browser/chromeos/gdata/ gdata_parser.cc, I realized that sometimes structural validity matters. It also introduce string16 whose code is almost equivalent to std::string. BUG=none TEST=passed Review URL: http://codereview.chromium.org/8952029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116473 0039d316-1c4b-4281-b951-d872f2087c98
* Add JSONValueConverter.mukai@chromium.org2011-12-221-0/+350
JSONValueConverter will convert a Value object (from JSON) into a C++ struct. All you will do is to register the mapping between field name and actual C++ field, then: JSONValueConverter<Message> converter; Message msg; converter.Convert(json, &msg); will scan json and fill fields in msg. See comments in .h and unittests.cc for examples. BUG=chromium-os:23508 TEST=passed Review URL: http://codereview.chromium.org/8774002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115562 0039d316-1c4b-4281-b951-d872f2087c98