rails--rails/activerecord/lib
Ryuta Kamizono f172129256 Call `self.class` only once in `init_internals`
Calling `self.class` multiple times is not cheap.

```ruby
class A
  def self.foo
  end

  def foo1
    self.class.foo
    self.class.foo
    self.class.foo
    self.class.foo
  end

  def foo2
    klass = self.class
    klass.foo
    klass.foo
    klass.foo
    klass.foo
  end
end

a = A.new

Benchmark.ips do |x|
  x.report("foo1") { a.foo1 }
  x.report("foo2") { a.foo2 }
end
```

```
Warming up --------------------------------------
                foo1   341.701k i/100ms
                foo2   414.000k i/100ms
Calculating -------------------------------------
                foo1      3.194M (± 5.4%) i/s -     16.060M in   5.044653s
                foo2      4.276M (± 3.8%) i/s -     21.528M in   5.041999s
```

Similar with #36052.
2021-03-28 11:15:12 +09:00
..
active_record Call `self.class` only once in `init_internals` 2021-03-28 11:15:12 +09:00
arel Merge pull request #41068 from ricardotk002/fix-where-in-stmt-logging 2021-03-20 01:41:29 +09:00
rails/generators Set `ApplicationRecord` to `primary_abstract_class` 2021-02-05 17:02:08 -05:00
active_record.rb Allow Adapter#select_all to be performed asynchronously from a background thread pool 2021-02-08 19:17:52 +01:00
arel.rb