Move base::WeakPtrFactory's ctor and dtor out-of-line

They already invoke the out-of-line ctor/dtor for WeakReferenceOwner, so
inlining the bit that sets up ptr_ is not a performance improvement and costs
binary size.

Since WeakPtrFactory is a template, move the members into a non-template
base-class with the ctor/dtor out-of-line.

This is expected to reduce the binary size by ~4KB on Android and 24KB on x64 Linux.

BUG=728324

Review-Url: https://codereview.chromium.org/2959203002
Cr-Commit-Position: refs/heads/master@{#483139}


CrOS-Libchrome-Original-Commit: d2a722f6bd23eaf0f791b19378c639dce6b3c2c0
2 files changed
tree: 9fb16035601d87ed5cf0afbe00af6bea5dbb2fb5
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/