summaryrefslogtreecommitdiff
path: root/java/src/json/ext/Parser.java
Commit message (Collapse)AuthorAgeFilesLines
* Implement a freeze: parser optionJean Boussier2020-09-151-73/+85
| | | | | | | If set to true all parsed objects will be immediately frozen, and strings will be deduplicated if the Ruby implementation allows it.
* Always use underscore for match stringFlorian Frank2019-02-211-3/+3
|
* Merge decimal_class patch by Michael JaschobFlorian Frank2016-09-231-77/+92
| | | | | | Also: - Avoid some issues with bundler - Avoid some issues with jruby
* Fix issue #296 when parsing frozen stringsFlorian Frank2016-07-261-71/+74
|
* Treat ASCII_8BIT as UTF-8 by defaultFlorian Frank2016-06-031-72/+78
|
* Remove quirks modeFlorian Frank2016-06-021-409/+103
|
* Remove remnants of GPL licensesFlorian Frank2015-09-111-2/+1
|
* Improve JRuby perf. by removing source of multithreaded contentionBen Browning2015-01-021-85/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RuntimeInfo.forRuntime method synchronizes all invocations and ParserSession#parseString was calling this many times when parsing large JSON strings. Thus, when running in a heavily multithreaded environment, threads were spending a large portion of their time waiting on that synchronization instead of doing work parsing the JSON. This fix simply passes in the RuntimeInfo object to the ParserSession when it's instantiated, since the RuntimeInfo is already known and we've already incurred the synchronization cost at that time. Using the test script at https://gist.github.com/bbrowning/0b89580b03a5f19e7a9f, I get the following results before and after this fix on my machine: Before: $ jruby ~/tmp/json_contention.rb 337.920000 0.570000 338.490000 ( 57.955000) After: $ jruby ~/tmp/json_contention.rb 326.400000 0.580000 326.980000 ( 43.084000) That's a 25% reduction in processing time for parsing the same JSON on my quad core machine. I'd expect an even higher percentage improvement on a machine with more CPUs.
* Security fix create_additons/JSON::GenericObjectv1.7.7Florian Frank2013-02-111-1/+1
|
* Change actual rl filessferik-max_nestingFlorian Frank2012-10-071-1/+1
|
* Increase default max_nesting to 100Erik Michaels-Ober2012-10-051-1/+1
| | | | See discussion at https://github.com/intridea/multi_json/pull/59.
* enforce utf8 encoding in parsed stringsjruby-fix-encodingFlorian Frank2012-05-101-36/+40
|
* Merge branch 'more_jruby_tweaks' of https://github.com/headius/json into ↵Florian Frank2011-12-211-84/+87
|\ | | | | | | headius-more_jruby_tweaks
| * Only allocate a single "view" bytelist, and update it as needed.Charles Oliver Nutter2011-12-201-84/+87
| | | | | | | | | | | | | | Conflicts: java/src/json/ext/Parser.java java/src/json/ext/Parser.rl
* | Remove superflous commentFlorian Frank2011-12-211-2/+0
|/
* Support duck typed ruby array in JRuby as wellFlorian Frank2011-12-201-8/+8
|
* Support hash ducktype objects on JRuby as wellFlorian Frank2011-12-201-32/+39
|
* Only allocate a single ParserResult, and pass it along the stack.headius-jruby_perf_tweaksCharles Oliver Nutter2011-12-201-100/+115
|
* Better ByteList subsequence and break up some parse methods.Charles Oliver Nutter2011-12-201-70/+92
|
* Minor tweaks to Java ext for performance.Charles Oliver Nutter2011-12-201-98/+104
| | | | | | | * Avoid full newInstance logic if constructing normal Array or Hash * Skip intermediate RubyString for float and integer parsing * Avoid toString for comparison with "-Infinity" * Avoid repeated class.getName().equals() calls
* Extract utils out of this library into json-utilsv1.6.0Florian Frank2011-09-131-80/+84
|
* Merge branch 'quirks-mode-parser' into quirks-modeFlorian Frank2011-07-311-115/+386
|\ | | | | | | | | | | | | | | | | Conflicts: java/src/json/ext/Parser.java java/src/json/ext/Parser.rl json.gemspec json_pure.gemspec tests/test_json.rb
| * Implement quirks_modeFlorian Frank2011-07-311-93/+364
| | | | | | | | This allows parsing of primitive values
* | started quirks mode for generatorFlorian Frank2011-07-271-37/+37
|/
* Ported fixes from fix_memory_leak into Parser.rlFlorian Frank2011-07-081-75/+86
| | | | | Ported semantic of the desired behaviour in ruby-core:35079 to java as well.
* Merge branch 'fix_memory_leak' of https://github.com/bigfix/json into ↵Florian Frank2011-07-041-7/+7
|\ | | | | | | development
| * Fix memory leak when used from multiple JRuby runtimes.John Firebaugh2011-05-181-7/+7
| |
* | Don't optimize calls for ducktypesFlorian Frank2011-05-121-25/+29
| |
* | use []= method if objectClass isn't a HashFlorian Frank2011-05-111-16/+20
|/
* renamed :match argument to :match_stringv1.5.0Florian Frank2011-01-051-5/+5
|
* avoid object creationFlorian Frank2011-01-031-35/+33
|
* implement string matching for java parserFlorian Frank2011-01-021-86/+114
|
* started to build jruby extension with RakefileFlorian Frank2010-09-231-0/+2269