)]}'
{
  "commit": "b28a4c48cd03d3e637a409f7f980d372a3251907",
  "tree": "cceffdddaaf79ac20373909a0ce371c0cdb46ceb",
  "parents": [
    "cd0dabbed7ed0517d97e0a4e1b373306f61b71a8"
  ],
  "author": {
    "name": "Yuxuan \u0027fishy\u0027 Wang",
    "email": "yuxuan.wang@reddit.com",
    "time": "Wed Mar 26 12:02:12 2025 -0700"
  },
  "committer": {
    "name": "Yuxuan \u0027fishy\u0027 Wang",
    "email": "fishywang@gmail.com",
    "time": "Wed Mar 26 14:22:49 2025 -0700"
  },
  "message": "THRIFT-5859: Generate a values iterator for enum types for go\n\nClient: go\n\nThe generated code looks like this:\n\n    type Foo int64\n\n    const (\n    \tFoo_One Foo \u003d 1\n    \tFoo_Two Foo \u003d 2\n    )\n\n    var knownFooValues \u003d []Foo{\n    \tFoo_One,\n    \tFoo_Two,\n    }\n\n    func FooValues() iter.Seq[Foo] {\n    \treturn func(yield func(Foo) bool) {\n    \t\tfor _, v :\u003d range knownFooValues {\n    \t\t\tif !yield(v) {\n    \t\t\t\treturn\n    \t\t\t}\n    \t\t}\n    \t}\n    }\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9e1865f95e8f211fcd4efb3cf8f953eb21af4e38",
      "old_mode": 33188,
      "old_path": "compiler/cpp/src/thrift/generate/t_go_generator.cc",
      "new_id": "8d0589231cd94897bbedfdb8372928d037296ad8",
      "new_mode": 33188,
      "new_path": "compiler/cpp/src/thrift/generate/t_go_generator.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "84bd26576639614da8f83dd5c6ff9a68cee4f4f3",
      "new_mode": 33188,
      "new_path": "lib/go/test/tests/enum_values_test.go"
    }
  ]
}
