)]}'
{
  "commit": "d3c91ade756f0fb066f6694a16dc58125021e15e",
  "tree": "4cf7f4be567367d2094b28909f657fb009ee4246",
  "parents": [
    "27d83703cd0aaa9ac38e1bf58e82b7733ce460a6"
  ],
  "author": {
    "name": "Prerak Mann",
    "email": "31154435+mannprerak2@users.noreply.github.com",
    "time": "Wed Jul 08 17:57:44 2020 +0530"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jul 08 14:27:44 2020 +0200"
  },
  "message": "[ffigen] Support for Prefix and Names in config. (#20)\n\n- Support for global prefix and prefix replacement in functions/structs/enums\r\n- Handles all internal name collisions (such as those between - dylib identifier, ffi import prefix, any typedefs generated, array helper classes, expanded array items, declarations, init function) if a collision occurs its suffixed by `_cr\u003cint\u003e`\r\n- Added tests for prefixing and collisions",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1cf00a3d90f06ed735d5557f9eebff23b7fd67dd",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/example/c_json/cjson_generated_bindings.dart",
      "new_id": "e26ed6a47743647569cd586ebfdb5e94b4082629",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/example/c_json/cjson_generated_bindings.dart"
    },
    {
      "type": "modify",
      "old_id": "4fbfac37dd3fbe346b67ef8e61e0be2fc65db986",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/example/libclang-example/generated_bindings.dart",
      "new_id": "6a0d1d3dbbfae50f0267ef427ef91bbb348b5276",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/example/libclang-example/generated_bindings.dart"
    },
    {
      "type": "modify",
      "old_id": "832f111d725e07676c5493457213ae9d68583f29",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/example/libclang-example/pubspec.yaml",
      "new_id": "c29adb8765659d4b68c5045e798d4a321ba70035",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/example/libclang-example/pubspec.yaml"
    },
    {
      "type": "modify",
      "old_id": "6e3a97b87e0aa7d34a7c59ac7bdc2559efb7ee05",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/example/simple/generated_bindings.dart",
      "new_id": "54409b1380aeddafb4d80139bd86ffb64d4de3a0",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/example/simple/generated_bindings.dart"
    },
    {
      "type": "modify",
      "old_id": "9eb01b641f26ef2bd7dcaae7472f7127d1cac60a",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator.dart",
      "new_id": "9af6dbefbf40bc9f72e263133c97b9d4495c7bdf",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator.dart"
    },
    {
      "type": "modify",
      "old_id": "127c0d25f1e51ffed8d246d67d6db5c5e8065a7b",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/binding.dart",
      "new_id": "f37c72c3bd5ce2cfa8717b6db1b5e78088f8c2df",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/binding.dart"
    },
    {
      "type": "modify",
      "old_id": "bef22d8db64051c6962c8312ea35044946140fd1",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/constant.dart",
      "new_id": "dd5c6570fbdd267caa34bed747afbb42b74fe43c",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/constant.dart"
    },
    {
      "type": "modify",
      "old_id": "90faf5bef360549da1470e9d6e44d9db213cef9a",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/enum_class.dart",
      "new_id": "1baea1884f39f6d1ab4b9f7c34741b5487144834",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/enum_class.dart"
    },
    {
      "type": "modify",
      "old_id": "688c573cb31ca47a455ca3a3d57aef61edb7f133",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/func.dart",
      "new_id": "ffc1509ea4d160106dc4feced66abd834fbf99fa",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/func.dart"
    },
    {
      "type": "modify",
      "old_id": "8729785f21801ad1c6e707728e322d3852b7f078",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/global.dart",
      "new_id": "2e41d822150b0f282cba9f90881dc917fc2831e2",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/global.dart"
    },
    {
      "type": "modify",
      "old_id": "8ae4a06ebb695baed0f59b4ed125c2896c5033df",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/library.dart",
      "new_id": "027c1f1316ab9a743b3997c7e32a0bddc3569655",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/library.dart"
    },
    {
      "type": "modify",
      "old_id": "5e2db56c56ff24706f0696725df7e94b92b86beb",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/struc.dart",
      "new_id": "949c239bf6c83ef7ecb5daf80de4659ee63718b6",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/struc.dart"
    },
    {
      "type": "modify",
      "old_id": "dccdec38d523a8a8eca4dc3319dc1f071d0a6caf",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/type.dart",
      "new_id": "a07b7768794d45c2e7624e92a916ca22eb2a52dd",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/type.dart"
    },
    {
      "type": "rename",
      "old_id": "ea9568f373f10eb84b8691f93d14e91ecb8b3e5b",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/typedef.dart",
      "new_id": "28075aa5e6c8c43dc3e7ea690488a27d01c7801e",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/typedefc.dart",
      "score": 71
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fbb1cce65093f69be0c45885224b18f7fb844e8a",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/utils.dart"
    },
    {
      "type": "modify",
      "old_id": "cc4496ff9c2b89ff0421cba66713dd1d40f11415",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/code_generator/writer.dart",
      "new_id": "aa8129c0b9967904349bd0316e32b1fb274f93f4",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/code_generator/writer.dart"
    },
    {
      "type": "modify",
      "old_id": "fbd2ae62fb08f8eee9bb2a1f12fb2efee27b125f",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/config_provider/config.dart",
      "new_id": "7abfb66991d9e65009a5da992d3835f289e5fd4b",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/config_provider/config.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4674bc52fc40bd548709ba573aa5e78d437a9eeb",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/config_provider/declaration.dart"
    },
    {
      "type": "delete",
      "old_id": "b35dc0b228b2a32acac029c137d88b809c7bfb99",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/config_provider/filter.dart",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "3544330d8e846777b97e2667da9f073a96de148e",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/config_provider/spec_utils.dart",
      "new_id": "560cc597a2ff0daa95131376a860c41a05a8c811",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/config_provider/spec_utils.dart"
    },
    {
      "type": "modify",
      "old_id": "546c8dca21dbacbcf60940c845149ee6cd290fa6",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/clang_bindings/clang_bindings.dart",
      "new_id": "e71a1621bfb88650370df9f64299af160db8478c",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/clang_bindings/clang_bindings.dart"
    },
    {
      "type": "modify",
      "old_id": "23698a5f45964036469239a3eb014cbb53ceb125",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/includer.dart",
      "new_id": "f0ab13c1c62689564cb7706fbb1e7c2cb21dc0a2",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/includer.dart"
    },
    {
      "type": "modify",
      "old_id": "eac3c93c415c2ca9b0fa346d886fcaf764dbe0c9",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/parser.dart",
      "new_id": "f50e2e5c87eaf9e036c143815b11ef833945a9e8",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/parser.dart"
    },
    {
      "type": "modify",
      "old_id": "c3e5a545bcb1762eda96df316ee0c849f9b593e2",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/enumdecl_parser.dart",
      "new_id": "25266e1f91f99a6b6afd83f6b486d530de6dba3b",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/enumdecl_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "3afb7b7926866c758445fc2accde57d371d0c7de",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/functiondecl_parser.dart",
      "new_id": "98b93d0b33740ff15fe747a78fff94baad999631",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/functiondecl_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "d7c9dc43e72afa6fc50dbb5824e42be1b40d408d",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/structdecl_parser.dart",
      "new_id": "a71f69ed61bf217c7dd62b089662b1a3a0c237c4",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/structdecl_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "c68b5e3320a27b08e6838fbcdda11d1fa406e05f",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/typedefdecl_parser.dart",
      "new_id": "30ec2abcbf62b4cc25539ac3496580787263e8da",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/sub_parsers/typedefdecl_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "8632b259c02aab0320ef565f2df5a229c7fe7247",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/translation_unit_parser.dart",
      "new_id": "a1b794b87bd20617063869015b090ebead47c11d",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/translation_unit_parser.dart"
    },
    {
      "type": "modify",
      "old_id": "9584ceae9a413eeca62e07967c3e524756b8ea3e",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/header_parser/type_extractor/extractor.dart",
      "new_id": "65fd6f010b3efbd92c3330299e525e5817b5e511",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/header_parser/type_extractor/extractor.dart"
    },
    {
      "type": "modify",
      "old_id": "a03aa97179ad72c0147bed379b0e564f45a65c77",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/lib/src/strings.dart",
      "new_id": "27e1d50e75cbf44d7f8e4e55dc87c9d0a4e9a4b7",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/lib/src/strings.dart"
    },
    {
      "type": "modify",
      "old_id": "431283724ecd159dc7456d61d6ac901961d6ef52",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/code_generator_test.dart",
      "new_id": "cddaab4d410f8b3c5fc8fb5a3afa9f544f359568",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/code_generator_test.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a96d763d6c1850fa02385bcb841b1d7117e2c3a4",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/collision_tests/decl_decl_collision_test.dart"
    },
    {
      "type": "modify",
      "old_id": "f9e261e80d35ec68b54971725fdceda33f0cdea0",
      "old_mode": 33188,
      "old_path": "pkgs/ffigen/test/header_parser_tests/functions_test.dart",
      "new_id": "fa09f9c202354fd316c15c99ed26b3533aadb62b",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/header_parser_tests/functions_test.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1e8b72da3d5a7ff453961c5f846e22f2a8d33049",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/prefix_tests/prefix.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d0397e4a381062b7320d154739c95d61514a51bb",
      "new_mode": 33188,
      "new_path": "pkgs/ffigen/test/prefix_tests/prefix_test.dart"
    }
  ]
}
