)]}'
{
  "commit": "da69eb75cbc634a56886e94de3e546c63c17567e",
  "tree": "e1351dd60dd4d246295071a6eee9d928752ff1b7",
  "parents": [
    "d02786e7785ffa8c0aae4d89e9f6391bb4645500"
  ],
  "author": {
    "name": "Ilya Biryukov",
    "email": "ibiryukov@google.com",
    "time": "Fri Apr 04 14:35:15 2025 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Apr 04 14:35:15 2025 +0200"
  },
  "message": "[NFC] [ASTMatchers] Share code of `forEachArgumentWithParamType` with UnsafeBufferUsage (#132387)\n\nThis changes exposes a low-level helper that is used to implement\n`forEachArgumentWithParamType` but can also be used without matchers,\ne.g. if performance is a concern.\n\nCommit f5ee10538b68835112323c241ca7db67ca78bf62 introduced a copy of the\nimplementation of the `forEachArgumentWithParamType` matcher that was\nneeded for optimizing performance of `-Wunsafe-buffer-usage`.\n\nThis change shares the code between the two so that we do not repeat\nourselves and any bugfixes or changes will be picked up by both\nimplementations in the future.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "738617759eb2953db25b97ac89258d35fc0896f8",
      "old_mode": 33188,
      "old_path": "clang/include/clang/ASTMatchers/ASTMatchers.h",
      "new_id": "e6b684b24b080a56206c554ed9a04be225a5a9a7",
      "new_mode": 33188,
      "new_path": "clang/include/clang/ASTMatchers/ASTMatchers.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ad1fffb5e5e01ff5816143b33cbeb7492a20a4e2",
      "new_mode": 33188,
      "new_path": "clang/include/clang/ASTMatchers/LowLevelHelpers.h"
    },
    {
      "type": "modify",
      "old_id": "30303c1e39a00c3814353eb74c10536e84175d69",
      "old_mode": 33188,
      "old_path": "clang/lib/ASTMatchers/CMakeLists.txt",
      "new_id": "7769fd656ac06bed1f3af8bab2f9341bc9943537",
      "new_mode": 33188,
      "new_path": "clang/lib/ASTMatchers/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "eb2604c6252ddc6c884cf636f3d31cdcba25d0cd",
      "new_mode": 33188,
      "new_path": "clang/lib/ASTMatchers/LowLevelHelpers.cpp"
    },
    {
      "type": "modify",
      "old_id": "776cbf6196b600150c53a01c5cfef214cebbefe6",
      "old_mode": 33188,
      "old_path": "clang/lib/Analysis/UnsafeBufferUsage.cpp",
      "new_id": "fbe753de9ef1f93c83a049c3950f591f8c322750",
      "new_mode": 33188,
      "new_path": "clang/lib/Analysis/UnsafeBufferUsage.cpp"
    }
  ]
}
