)]}'
{
  "commit": "786bc92002dfcec10bd8bbba98fca971bec5ca40",
  "tree": "618abc01229ffe55ac85d82970ccc090aed331c6",
  "parents": [
    "b8791a512990c392ce92a5a781ff9a3cda02c795"
  ],
  "author": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Wed Nov 04 20:08:51 2020 +0000"
  },
  "committer": {
    "name": "Commit Bot service account",
    "email": "commit-bot@chromium.org",
    "time": "Wed Nov 04 20:08:51 2020 +0000"
  },
  "message": "wsgl parser: Add expect_block(), use it\n\n`expect_block()` takes a start and end token, along with a function to parse a lexical block body.\n\nThis reduces code, keeps error messages consistent, and also gives us a future place to try resynchronising the parser so we can have more than one error emitted.\n\n`expect_paren_block()` and `expect_brace_block()` are convenience helpers for providing the start and end tokens for common block types.\n\nBug: tint:282\nChange-Id: I432a0301727b131a6fce875687b952dfc6889a4b\nReviewed-on: https://dawn-review.googlesource.com/c/tint/+/31736\nCommit-Queue: Ben Clayton \u003cbclayton@google.com\u003e\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "248d78c97b0d844a74172eeb7df49105cd0e9bd6",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl.cc",
      "new_id": "ec4fc3943ed047731e2858f3b8c55febc15ad873",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "91c54fa14a6ea9ff13b659c4294a7c4704aac8ec",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl.h",
      "new_id": "e1de67fe447c59abf50b967562708d1334444e29",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl.h"
    },
    {
      "type": "modify",
      "old_id": "1bd1fbeb59975548e919b112b069155558397042",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_body_stmt_test.cc",
      "new_id": "e578651d618f6579f34747f958d6cf87a0b84fe8",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_body_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "fa5af49007125fa1351e6d83c0542e0a7940a0ab",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_else_stmt_test.cc",
      "new_id": "f83fa4a95710b6feb94992d02b66869740d74b3d",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_else_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "13aff03a99f849ae3f68d470445bbbf0b990cd43",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_elseif_stmt_test.cc",
      "new_id": "93ce334e24372e95b2c663c9436b68c9bee200dc",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_elseif_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "dac8e4511c56c83c42c7f8354e796edfe779c9c5",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_error_msg_test.cc",
      "new_id": "899a6afc8647829093e19d8e453ca4cfdc55c7fa",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_error_msg_test.cc"
    },
    {
      "type": "modify",
      "old_id": "6fffc657044ee58fa3225bf7681c68bc0ff6dfe0",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_for_stmt_test.cc",
      "new_id": "b599e6565671b9bedfeb60f937e335e1e2762207",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_for_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "79720a16413c8b990614b728137b2544f5fdfe32",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_function_decl_test.cc",
      "new_id": "549273aa0feaf136485c09d72b09088f61e3b73f",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_function_decl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "63cba7107c600a2e7b6a39abdc78b3d2a6d9aea4",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_if_stmt_test.cc",
      "new_id": "50c3827e23027c8dce0c10f7290989b10b6dde92",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_if_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "71962ddd99b1350701ff8559ded47d06571144bb",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_loop_stmt_test.cc",
      "new_id": "41aea2fb9d159510ffc0fa0d74fc2f0de8e31728",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_loop_stmt_test.cc"
    },
    {
      "type": "modify",
      "old_id": "ee6df75703c04464de5ef190e42af41d4308165c",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_statement_test.cc",
      "new_id": "2cebedfd9f9f876af9af49fa61976c539b82edb2",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_statement_test.cc"
    },
    {
      "type": "modify",
      "old_id": "38e8c75fa7611d5dbf0ac6bcb50b56eb1830c768",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_struct_body_decl_test.cc",
      "new_id": "33c4b4f695034f3283061662ba94ddba6a9748f8",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_struct_body_decl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "884fea88c9b59eaf4bb33a299051ef064d6d0f9b",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_struct_decl_test.cc",
      "new_id": "ebf1c4ac705926413513d61ad6c4944e2ef82ba2",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_struct_decl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "b5d3cd1378f755f95f2bd04050012b450dd974e0",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_switch_body_test.cc",
      "new_id": "6b4078ced01a624ce861f932638680f381f8920f",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_switch_body_test.cc"
    },
    {
      "type": "modify",
      "old_id": "c3f99d60ebbd12030c96b70ccdef56bdf46d4389",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_switch_stmt_test.cc",
      "new_id": "15b6a5c78e897ed2b64f21e60e4c53c9f3a373ad",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_switch_stmt_test.cc"
    }
  ]
}
