Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | reduce object allocations | Aaron Patterson | 2014-05-21 | 1 | -2/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example: x = [1,2,3,4] y = [3,2,1] def test x, y hash = {} x.zip(y) { |k,v| hash[k] = v } hash end def test2 x, y Hash[x.zip(y)] end def test3 x, y x.zip(y).each_with_object({}) { |(k,v),hash| hash[k] = v } end def stat num start = GC.stat(:total_allocated_object) num.times { yield } total_obj_count = GC.stat(:total_allocated_object) - start puts "#{total_obj_count / num} allocations per call" end stat(100) { test(x,y) } stat(100) { test2(x,y) } stat(100) { test3(x,y) } __END__ 2 allocations per call 7 allocations per call 8 allocations per call | ||||
* | make variable name more clear | Aaron Patterson | 2014-05-21 | 1 | -2/+2 |
| | |||||
* | do not mutate parameters, let the caller do mutations | Aaron Patterson | 2014-05-21 | 2 | -4/+6 |
| | |||||
* | push the formatter up to the Route object | Aaron Patterson | 2014-05-21 | 2 | -4/+4 |
| | |||||
* | Merge pull request #15213 from tgxworld/remove_redundant_code | Rafael Mendonça França | 2014-05-20 | 1 | -3/+2 |
|\ | | | | | Remove redundant code. | ||||
| * | Remove redundant code. | Guo Xiang Tan | 2014-05-20 | 1 | -3/+2 |
| | | |||||
* | | we don't use this parameter for anything, so rm | Aaron Patterson | 2014-05-20 | 2 | -2/+2 |
| | | |||||
* | | fewer string allocations per url_for | Aaron Patterson | 2014-05-20 | 1 | -7/+5 |
| | | |||||
* | | mutate the path string to avoid object allocations | Aaron Patterson | 2014-05-20 | 1 | -4/+4 |
| | | |||||
* | | push only_path conditional up | Aaron Patterson | 2014-05-20 | 1 | -18/+19 |
| | | |||||
* | | push arg checking up | Aaron Patterson | 2014-05-20 | 1 | -4/+4 |
| | | |||||
* | | fewer method calls and string garbage when there is no user/password | Aaron Patterson | 2014-05-20 | 1 | -9/+5 |
| | | |||||
* | | fewer hash allocations when calling url_for | Aaron Patterson | 2014-05-20 | 1 | -9/+12 |
| | | |||||
* | | fix variable names, only pass hashes to the positional args method | Aaron Patterson | 2014-05-20 | 1 | -8/+10 |
| | | |||||
* | | remove dead code | Aaron Patterson | 2014-05-20 | 1 | -57/+0 |
| | | |||||
* | | cache the formatter on the path object | Aaron Patterson | 2014-05-20 | 2 | -2/+6 |
| | | |||||
* | | translate AST to a formatter before url generation | Aaron Patterson | 2014-05-20 | 2 | -1/+72 |
| | | |||||
* | | prepopulate the dispatch cache so we don't need the ThreadSafe cache. | Aaron Patterson | 2014-05-20 | 1 | -7/+9 |
| | | |||||
* | | make the each visitor top-down left-right | Aaron Patterson | 2014-05-20 | 1 | -1/+1 |
| | | |||||
* | | make the AST go from left to right, rather than right to left | Aaron Patterson | 2014-05-19 | 2 | -45/+48 |
| | | |||||
* | | fix escaping in generation | Aaron Patterson | 2014-05-19 | 1 | -1/+7 |
| | | |||||
* | | Revert "Rewrite journey routes formatter for performance" | Aaron Patterson | 2014-05-19 | 1 | -28/+23 |
|/ | | | | | | | | | | This reverts commit 5c224de9e110763ec7a0f01f5b604bcf81f40bfb. Conflicts: actionpack/lib/action_dispatch/journey/visitors.rb 5c224de9e110763ec7a0f01f5b604bcf81f40bfb introduced a bug in the formatter. This commit includes a regression test. | ||||
* | fixes stack level too deep exception on action named 'status' returning ↵ | Christiaan Van den Poel | 2014-05-15 | 1 | -0/+3 |
| | | | | 'head :ok' | ||||
* | Add RFC4791 MKCALENDAR method | kasper | 2014-05-15 | 1 | -1/+3 |
| | |||||
* | Only path requirements are relevant to optimized urls | Andrew White | 2014-05-15 | 1 | -1/+1 |
| | | | | | The bit of URL generation that is optimized is the generation of the path so things like :host, :port, etc. are irrelevant. | ||||
* | Add missing requires for require 'action_dispatch/routing' | Andrew White | 2014-05-15 | 2 | -0/+3 |
| | |||||
* | _recall should be set to a hash or not set | Aaron Patterson | 2014-05-13 | 1 | -2/+2 |
| | | | | Then we can avoid nil checks | ||||
* | we never call url_for with a block, so rm | Aaron Patterson | 2014-05-13 | 1 | -1/+0 |
| | |||||
* | drop || test for cases that do not need it | Aaron Patterson | 2014-05-13 | 2 | -4/+6 |
| | |||||
* | no need to check for presence, script names can be blank | Aaron Patterson | 2014-05-13 | 1 | -2/+2 |
| | |||||
* | extend with a module then use define_method | Aaron Patterson | 2014-05-13 | 1 | -7/+4 |
| | | | | no need for redefine_method | ||||
* | this method should always have a parameter passed to it, so remove the default | Aaron Patterson | 2014-05-13 | 1 | -1/+1 |
| | |||||
* | options should always be passed to url_for | Aaron Patterson | 2014-05-13 | 1 | -2/+2 |
| | |||||
* | calls with :host should still use the optimized path | Aaron Patterson | 2014-05-13 | 1 | -2/+2 |
| | |||||
* | use fewer method calls to determine the url_for options | Aaron Patterson | 2014-05-13 | 1 | -5/+4 |
| | |||||
* | just merge instead of dup and merge | Aaron Patterson | 2014-05-13 | 1 | -2/+1 |
| | |||||
* | the :only_path option is applied by the time the helper is called | Aaron Patterson | 2014-05-13 | 1 | -4/+1 |
| | |||||
* | options already have symbolized keys, so we can avoid this call | Aaron Patterson | 2014-05-13 | 1 | -1/+1 |
| | |||||
* | Get rid of unused method | Carlos Antonio da Silva | 2014-05-13 | 1 | -11/+0 |
| | | | | It's usage has been removed in 325c9d5e5235db4b5210d9db6c863835d1ac7eed. | ||||
* | Simplify merge call on polymorphic helpers | Carlos Antonio da Silva | 2014-05-13 | 1 | -2/+2 |
| | |||||
* | Fix regression on `assert_redirected_to`. | Arthur Neves | 2014-05-13 | 1 | -1/+7 |
| | | | | | | | | | | `assert_redirected_to` would fail if there is no controller set on a `ActionDispatch::IntegrationTest`, as _compute_redirect_to_location would be called on the controller to build the url. This regression was introduced after 1dacfbabf3bb1e0a9057dd2a016b1804e7fa38c0. [fixes #14691] | ||||
* | avoid array allocation when extracting usernames and passwords | Aaron Patterson | 2014-05-12 | 1 | -1/+7 |
| | |||||
* | Revert "reduce conditionals in url_for" | Aaron Patterson | 2014-05-12 | 1 | -6/+3 |
| | | | | This reverts commit 9df60693d77813b362fb528fc62381ac8f1eec12. | ||||
* | use the helper method builder to construct helper methods | Aaron Patterson | 2014-05-12 | 2 | -57/+112 |
| | |||||
* | undo optimized calls until the builder object is finished | Aaron Patterson | 2014-05-12 | 2 | -37/+20 |
| | |||||
* | remove suffix from the handler methods | Aaron Patterson | 2014-05-12 | 1 | -20/+19 |
| | |||||
* | push list handling to the builder object | Aaron Patterson | 2014-05-12 | 1 | -30/+30 |
| | |||||
* | push string handling to the builder object | Aaron Patterson | 2014-05-12 | 1 | -10/+8 |
| | |||||
* | push model and class handling to a helper builder object | Aaron Patterson | 2014-05-12 | 1 | -36/+48 |
| | |||||
* | adding a method to handle strings using the same api | Aaron Patterson | 2014-05-12 | 1 | -22/+32 |
| |