)]}'
{
  "commit": "a91d6bea45eee548cd6cdcd430b7619d7841d8a8",
  "tree": "f6865a542b2da0b03385958672d7dc645f9ee6d4",
  "parents": [
    "33843d6acef90dfd49cdbba6e04348e6178a766a"
  ],
  "author": {
    "name": "Paul Berry",
    "email": "paulberry@google.com",
    "time": "Fri Jul 31 09:18:48 2026 -0700"
  },
  "committer": {
    "name": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Jul 31 09:18:48 2026 -0700"
  },
  "message": "[flow analysis] Add offset parameters to API.\n\nAdds optional `offset` parameters to most flow analysis methods. Later\nCLs will use these offsets to create a log of flow analysis state\nchanges, which can be later queried in order to determine the flow\nanalysis state at a given source code location.\n\nA few new methods are added:\n\n- `checkOffset`, which can be used by the client to help verify that\n  the offsets it passes to flow analysis are sensible.\n\n- `patternAssignment_beforeRhs`, which the client should call to\n  inform flow analysis that it\u0027s about to visit the RHS of a pattern\n  assignment expression.\n\n- `patternForIn_beforeExpression`, which the client should call to\n  inform flow analysis that it\u0027s about to visit the iterable\n  expression in a pattern \"for-in\" statement or collection element.\n\n- `patternVariableDeclaration_beforeInitializer`, which the client\n  should call to inform flow analysis that it\u0027s about to visit the\n  initializer of a pattern variable declaration.\n\nThe three new `pattern...` methods don\u0027t currently do anything, but\nthey will be needed once we try to populate the log. They will be\nneeded because in these three constructs, type analysis visits the\nexpression on the RHS _before_ it visits the pattern on the LHS. So if\nthe pattern match causes any promotions to occur, the log will need to\nreflect the fact that those promotions are not in effect during\nevaluation of the expression.\n\nPart of https://github.com/dart-lang/sdk/issues/63816.\n\nChange-Id: Ia920d708665e2bd85e84fc8cd7f826986a6a6964\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/529080\nReviewed-by: Chloe Stefantsova \u003ccstefantsova@google.com\u003e\nCommit-Queue: Paul Berry \u003cpaulberry@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "137f65da1146100c66a4827ecd1a2701a6328dc0",
      "old_mode": 33188,
      "old_path": "pkg/_fe_analyzer_shared/lib/src/flow_analysis/flow_analysis.dart",
      "new_id": "855d35eb7143ecd0a4fad7587d45b194d6e05636",
      "new_mode": 33188,
      "new_path": "pkg/_fe_analyzer_shared/lib/src/flow_analysis/flow_analysis.dart"
    },
    {
      "type": "modify",
      "old_id": "b4113623561e67eb5b70e3c3fa28a504871090ee",
      "old_mode": 33188,
      "old_path": "pkg/front_end/test/spell_checking_list_code.txt",
      "new_id": "8da6bb35a0a7ecc3c37e5e3bfa238ff52a394ae8",
      "new_mode": 33188,
      "new_path": "pkg/front_end/test/spell_checking_list_code.txt"
    }
  ]
}
