)]}'
{
  "commit": "2491826d4d5c91ac60448a8ab1d8ad69c7b6763c",
  "tree": "07eba8040e403d55739832cebce9be027c93c8d6",
  "parents": [
    "e2d6f4c9eb2a8226ac866562bd331be80d7a3178"
  ],
  "author": {
    "name": "Liam Appelbe",
    "email": "liama@google.com",
    "time": "Wed Nov 01 19:02:51 2023 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Nov 01 19:02:51 2023 -0700"
  },
  "message": "[ffigen] ObjC static functions (#633)\n\n* WIP static functions\r\n\r\n* Revert old code gen changes\r\n\r\n* Refactor function code gen\r\n\r\n* Arg and return conversions\r\n\r\n* fix bugs\r\n\r\n* Fix analysis, add more tests\r\n\r\n* fmt\r\n\r\n* Fix autorelease pool test\r\n\r\n* Handle NS_RETURNS_RETAINED\r\n\r\n* Daco\u0027s comments",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3de820dba9c8cb528f5066bb1ed9d1c8e60ea967",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/CHANGELOG.md",
      "new_id": "a1aef8cf1742e34d697f32695e8bfa9899b56745",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "cbdebe7ef30caaf7a4c1f4b45fe5785b337b274d",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/func.dart",
      "new_id": "766cc289eefd8ddee955f49cd73ad5e34182f1ef",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/func.dart"
    },
    {
      "type": "modify",
      "old_id": "1e734bc41fcec92dd0287974c7c4c17cc7e35b36",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/func_type.dart",
      "new_id": "49dcf605baa711b52f24987a38ca618fc78cec2c",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/func_type.dart"
    },
    {
      "type": "modify",
      "old_id": "b61efc7cfdbf5f84f568805420a62d786df43bc3",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/objc_block.dart",
      "new_id": "d16ab1127005375c20a6ce96f3641bdf73457105",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/objc_block.dart"
    },
    {
      "type": "modify",
      "old_id": "2ed1f10e1795a628f88d99cdbb5cc4311c569e62",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/objc_interface.dart",
      "new_id": "495cdf18b51674acb21738682e94880084e5de6e",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/objc_interface.dart"
    },
    {
      "type": "modify",
      "old_id": "a8d8c52285233d954ceccfcde0f56e51570d01bc",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/objc_nullable.dart",
      "new_id": "f3c0b877ab94aae49d62f835f5b185ed88b6d3dc",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/objc_nullable.dart"
    },
    {
      "type": "modify",
      "old_id": "dcaf59731edec9514afa5af4176367011bf5b4a1",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/pointer.dart",
      "new_id": "30e2e6ba786ed7316e0b086ce0a17b4d374b6a8d",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/pointer.dart"
    },
    {
      "type": "modify",
      "old_id": "fff7f0f03a9f91b4d88880b1d08236c0e8b77aa8",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/type.dart",
      "new_id": "c1d1e227fab349f68bedd969191509d035c3e1e8",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/type.dart"
    },
    {
      "type": "modify",
      "old_id": "fe971a54df01e90cf9a8aa6288b199f7f512b359",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/typealias.dart",
      "new_id": "e31d14882e22685b88b498d3f11ae6e6dca44521",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/typealias.dart"
    },
    {
      "type": "modify",
      "old_id": "f9d1121def4550f8e7ccb8702f2b01e62b15997c",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/functiondecl_parser.dart",
      "new_id": "c2291b4a162899e93d042481e7b82e373c38dfd7",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/functiondecl_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "d249389614adfbe1c34001f9dee776963b440ce1",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/native_objc_test/automated_ref_count_test.m",
      "new_id": "cf8ab3a1e8b13f83fbb80f8babaf56f4f2e4517a",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/automated_ref_count_test.m"
    },
    {
      "type": "modify",
      "old_id": "841439e073b1bff929dc0f3ecc47d6332a118cb4",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/native_objc_test/block_config.yaml",
      "new_id": "9f12686e3db3b8910e5bed131a5913d35ba3ba6d",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/block_config.yaml"
    },
    {
      "type": "modify",
      "old_id": "7ca61d6ce86af94000d6fbbda12c25d5b34eb10d",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/native_objc_test/block_test.dart",
      "new_id": "d2068ced9357721e12b8979dab4341a044dab166",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/block_test.dart"
    },
    {
      "type": "modify",
      "old_id": "3dd4289d5413f39d474cd512e1047a4713951cff",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/native_objc_test/block_test.m",
      "new_id": "d27a97c82d7967d28f0e7ff361ad800bf4c2141f",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/block_test.m"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bbafeaa78bca4b68c29abbb3f0e597f2720998ae",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/static_func_config.yaml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2a591c9f703b08c840f355359c499f2a1da7bfba",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/static_func_native_config.yaml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "93cbcad749bd224ccf90a256404fa035c0f78074",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/static_func_native_test.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f3d9c01be85321ffd1ca264306ece494932accb1",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/static_func_test.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5fc3a14d720d1b0e66e6f61b854fc6f0e6e9f621",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/static_func_test.m"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0694aea5d72b7d213a03e1142e027e84c3c0c24b",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/native_objc_test/util.h"
    }
  ]
}
