)]}'
{
  "commit": "8db047d91d6666eab1a2e14a0cb15efe7c778f75",
  "tree": "2fd0b1f6cddf17338b4d3b0e9c80cb38edaeb919",
  "parents": [
    "7ee97ad4b11c58b27b443350f6205797f0c33bd8"
  ],
  "author": {
    "name": "Googler",
    "email": "no-reply@google.com",
    "time": "Tue Jul 02 15:09:06 2024 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Jul 02 15:10:29 2024 -0700"
  },
  "message": "Support `__crubit::annotate(cpp_name\u003d\"X\")` to rename Rust function names that are C++ reserved keywords.\n\nWe keep the thunk name untouched for two reasons:\n\n1. First, it doesn\u0027t affect the C++ usage.\n2. We can avoid demangling and mangling the thunk name as there is no straight-forward way to replace the name in the thunk name.\n\nPiperOrigin-RevId: 648856269\nChange-Id: I3e5c1d2f6822e0a750298c0195efa183162139ba\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "831258390b62714f59102aabb3300d488a6dbce9",
      "old_mode": 33188,
      "old_path": "bazel/llvm.bzl",
      "new_id": "12374f3d7c6d981d9aeb8af3f1b6d02668a1c7b0",
      "new_mode": 33188,
      "new_path": "bazel/llvm.bzl"
    },
    {
      "type": "modify",
      "old_id": "2144142e8c77c7ace02a62ce1cb695dc213b496b",
      "old_mode": 33188,
      "old_path": "cc_bindings_from_rs/bindings.rs",
      "new_id": "11ae5c968c273a969895f2c33b56e52c26669b21",
      "new_mode": 33188,
      "new_path": "cc_bindings_from_rs/bindings.rs"
    },
    {
      "type": "modify",
      "old_id": "33bfc2ce1ae7d8642ed46367f88cf1a9622cc5b1",
      "old_mode": 33188,
      "old_path": "cc_bindings_from_rs/crubit_attr.rs",
      "new_id": "f33e1a595ef7bbcc040f72c73075e45fbc71c065",
      "new_mode": 33188,
      "new_path": "cc_bindings_from_rs/crubit_attr.rs"
    }
  ]
}
