)]}'
{
  "commit": "c8a81731f4a1358633081729c304e7ec15ee7085",
  "tree": "b5160397bd2e235a6b1fe66066c55729167ca069",
  "parents": [
    "10e61a3d7eb8fc22e16181964bdb725d4bba9048"
  ],
  "author": {
    "name": "Corentin Wallez",
    "email": "cwallez@chromium.org",
    "time": "Tue Jun 23 08:13:38 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Jun 23 08:13:38 2026 -0700"
  },
  "message": "[dawn][native] Add support for typed spans in input structures\n\nChanges the code generation of the wgpu_structs_autogen.h used in\ndawn_platform.h to use ityp::span when converting size_t + T* (which a\nTypedInteger index or just size_t).\n\nAdds kOffsetOfSize/Data to dawn::Span to check via a static_assert that\nthe layout of the struct stays the same as webgpu.h so we can directly\ncast from one type to another.\n\nSpanify VertexBufferLayout to exercise the new codegen path.\n\nBug: 515272358\nChange-Id: Iebc68209908e5f2181124455a89be6f183813e08\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/317155\nReviewed-by: Loko Kung \u003clokokung@google.com\u003e\nReviewed-by: Kai Ninomiya \u003ckainino@chromium.org\u003e\nCommit-Queue: Corentin Wallez \u003ccwallez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4adf3a96267c775accf8dcf74c7f43e74a241832",
      "old_mode": 33188,
      "old_path": "docs/dawn/codegen.md",
      "new_id": "f3846a60c6c0a6794aa02966e09b940f2dddb343",
      "new_mode": 33188,
      "new_path": "docs/dawn/codegen.md"
    },
    {
      "type": "modify",
      "old_id": "53b295897580572782e03d586b32fa7bbae72b7f",
      "old_mode": 33188,
      "old_path": "generator/templates/dawn/native/api_structs.cpp",
      "new_id": "f453a22efdfef145d0aa20e584733d312ac8e3ab",
      "new_mode": 33188,
      "new_path": "generator/templates/dawn/native/api_structs.cpp"
    },
    {
      "type": "modify",
      "old_id": "35d568faffe58c9836239b23a8ad4518e9670214",
      "old_mode": 33188,
      "old_path": "generator/templates/dawn/native/api_structs.h",
      "new_id": "b3cda51467bc8e8bb505e9e9936b547873ae095c",
      "new_mode": 33188,
      "new_path": "generator/templates/dawn/native/api_structs.h"
    },
    {
      "type": "modify",
      "old_id": "531e478f148150aa6086dd4318449a12f86c28dc",
      "old_mode": 33188,
      "old_path": "src/dawn/dawn_native.json",
      "new_id": "a8245fac2d90fe8ca9b076f3821a36a61fb3920e",
      "new_mode": 33188,
      "new_path": "src/dawn/dawn_native.json"
    },
    {
      "type": "modify",
      "old_id": "ba165b3584c917ebfe0c85d08061328ecb2dc7bd",
      "old_mode": 33188,
      "old_path": "src/dawn/native/RenderPipeline.cpp",
      "new_id": "67bcb499c4d8da6df6f6184782d8a9a9df5d2df7",
      "new_mode": 33188,
      "new_path": "src/dawn/native/RenderPipeline.cpp"
    },
    {
      "type": "modify",
      "old_id": "b6b1500211a08f004c60ecdac89c7339d4491489",
      "old_mode": 33188,
      "old_path": "src/utils/span.h",
      "new_id": "e10e0d75b5ccc3e416dc739c90c1f6b30f8583a3",
      "new_mode": 33188,
      "new_path": "src/utils/span.h"
    }
  ]
}
