)]}'
{
  "commit": "f5bdd2459caec2ad239e5693b826084b45f8d478",
  "tree": "800f02944dcba7cd176b7e51d10f955811f44fc4",
  "parents": [
    "99928fc00d95803edd307716b66fd705954ca006"
  ],
  "author": {
    "name": "Evan Brown CA",
    "email": "ezb@google.com",
    "time": "Fri Oct 30 09:12:01 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Fri Oct 30 09:12:52 2026 -0700"
  },
  "message": "Use `AddConstRefIfExpensiveToCopy` and `ABSL_ATTRIBUTE_NO_UNIQUE_ADDRESS` for hash/eq functor members in SwissTable helpers.\n\nHashElement, HashKey, and EqualElement previously stored `const Hash\u0026` and `const KeyEqual\u0026` references. Even for empty stateless functors (such as absl::Hash) or small trivially copyable stateful functors, those reference members occupied 8 bytes, forced callers like find_or_prepare_insert_small() to materialize and store `\u0026this-\u003ehash_` on the stack inside HashKey, and placed HashKey::key at offset 8 instead of offset 0 in HashKey::GetHash().\n\nStore hash/eq as `ABSL_ATTRIBUTE_NO_UNIQUE_ADDRESS type_traits_internal::AddConstRefIfExpensiveToCopy` so empty functors occupy no space and small trivial functors are passed and stored by value without pointer indirection.\n\nPiperOrigin-RevId: 1010563212\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "351fc224e19c57af65d4c84dcd207c1df3478a61",
      "old_mode": 33188,
      "old_path": "absl/container/BUILD.bazel",
      "new_id": "4bb6fec6474b5f878fd7aac0fc808e0b7bb18616",
      "new_mode": 33188,
      "new_path": "absl/container/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "5b33ebfc3f2b38285128b109f570b1cd212f5ed6",
      "old_mode": 33188,
      "old_path": "absl/container/CMakeLists.txt",
      "new_id": "903b308914b3059dd5df5c266d6f57854fb5f1dc",
      "new_mode": 33188,
      "new_path": "absl/container/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "065d97acac51b2180b07bb6f33736012b126e577",
      "old_mode": 33188,
      "old_path": "absl/container/internal/container_memory.h",
      "new_id": "3d16a680c844db2d038973669111c554a1f072e9",
      "new_mode": 33188,
      "new_path": "absl/container/internal/container_memory.h"
    },
    {
      "type": "modify",
      "old_id": "b31af8fbed9f083954e0bff0766b51ab6d61aa60",
      "old_mode": 33188,
      "old_path": "absl/container/internal/raw_hash_set_test.cc",
      "new_id": "4c33b4f8cdb6e162ff00b06704fccd6d14a7b51b",
      "new_mode": 33188,
      "new_path": "absl/container/internal/raw_hash_set_test.cc"
    }
  ]
}
