)]}'
{
  "commit": "922686067a2d610a93072cc9bbd3d9758087f4d1",
  "tree": "4164353bfed8a54c9a2357c1d67049cff2ec7c28",
  "parents": [
    "8d6f494844fc30e117bdcac4260d892d7114b429"
  ],
  "author": {
    "name": "Laurent Pinchart",
    "email": "laurent.pinchart@ideasonboard.com",
    "time": "Wed Jun 12 23:31:07 2024"
  },
  "committer": {
    "name": "Laurent Pinchart",
    "email": "laurent.pinchart@ideasonboard.com",
    "time": "Sun Jun 16 00:28:25 2024"
  },
  "message": "libcamera: yaml_parser: Delegate YamlObject::get() to helper structure\n\nThe YamlObject::get() function is a function template that gets fully\nspecialized for various types. This works fine for non-template types,\nbut specializing it for template types (e.g. a std::vector\u003cU\u003e) would\nrequire partial template specialization, which C++ allows for classes\nand variables but not functions.\n\nTo work around this problem, delegate the implementation to a new\nYamlObject::Getter structure template, which will support partial\nspecialization.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nReviewed-by: Paul Elder \u003cpaul.elder@ideasonboard.com\u003e\nReviewed-by: Kieran Bingham \u003ckieran.bingham@ideasonboard.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "81cc0e25ae0f7e707423ace1e3c4791bd77a89f5",
      "old_mode": 33188,
      "old_path": "include/libcamera/internal/yaml_parser.h",
      "new_id": "06a41146ad016b69d8222b73e4f4cb8bdca8b6d1",
      "new_mode": 33188,
      "new_path": "include/libcamera/internal/yaml_parser.h"
    },
    {
      "type": "modify",
      "old_id": "b68a44c15c35ad1ec37af87875c3d6366bfc8fc6",
      "old_mode": 33188,
      "old_path": "src/libcamera/yaml_parser.cpp",
      "new_id": "56670ba7a5841f89d600724dd018b885eacb3f03",
      "new_mode": 33188,
      "new_path": "src/libcamera/yaml_parser.cpp"
    }
  ]
}
