)]}'
{
  "commit": "1880d38ff4c50d4e5b6eeb92cf4bd833a8d7d6b7",
  "tree": "329945f5493916aaa6c950fdb3ffcb30cc18cc77",
  "parents": [
    "297ce2fb2781184fb4dae67211917f5696eef209"
  ],
  "author": {
    "name": "Clayton Knittel",
    "email": "cknittel@google.com",
    "time": "Thu Jun 25 14:54:26 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Thu Jun 25 14:56:24 2026 -0700"
  },
  "message": "Move MessageLite/Message specialization logic to the implementation of `DynamicCast` instead of overloads.\n\nWe are missing a lot of overloads of DynamicCast/DownCast between Messages and MessageLites (e.g. const/non-const, pointer/reference, plus all combinations of MessageLite x Message). This is handled much more nicely with some `if constexpr`s.\n\nPiperOrigin-RevId: 938208591\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a08b7bf4de059acb7b71be4f46ea854d5f93e897",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/compiler/cpp/unittest.inc",
      "new_id": "289cbd4d0ba18130192e361189955d705033514d",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/compiler/cpp/unittest.inc"
    },
    {
      "type": "modify",
      "old_id": "ab995c76e9ebfdd3f7292255e666cedb637af573",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/lite_unittest.cc",
      "new_id": "bf43cb5a1b74e9f58be0681de02aeaf15dd835a2",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/lite_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "1f454e7efac35dfc1d49159910e7af76ee009287",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/message.h",
      "new_id": "3c506eb29f9da919ca4524994f7249be125f01e8",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/message.h"
    },
    {
      "type": "modify",
      "old_id": "378e84997d7f473493d83adba0f2239df0ea0257",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/message_lite.cc",
      "new_id": "8e8c5c1c638bffa2a1861e9b99f56cf8761bb74f",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/message_lite.cc"
    },
    {
      "type": "modify",
      "old_id": "96d5b03564c1d4b20616ba700bb40368e60758a6",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/message_lite.h",
      "new_id": "52788e951b0520ae32ab0c785ad474d78804938e",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/message_lite.h"
    },
    {
      "type": "modify",
      "old_id": "c525fa49d2ab933d5f6b5e491291a9f5ec1dd327",
      "old_mode": 33188,
      "old_path": "src/google/protobuf/message_unittest.inc",
      "new_id": "74d949421a521f440558687de7368861121e1e66",
      "new_mode": 33188,
      "new_path": "src/google/protobuf/message_unittest.inc"
    }
  ]
}
