)]}'
{
  "commit": "0b60686e3d21ea40aac6546310b0507a002d48ca",
  "tree": "6c73be7204c9a454d9450a8a996417445b69cd06",
  "parents": [
    "17ceaae16ef73fdc7dd77dba7e6820ac09134595"
  ],
  "author": {
    "name": "Richard Patel",
    "email": "me@terorie.dev",
    "time": "Tue Dec 02 22:21:16 2025 -0600"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Dec 03 04:21:16 2025 +0000"
  },
  "message": "rust: impl TrustedLen for VectorIter (#8797)\n\nImproves unpack performance for vectors by allowing the compiler\nto vectorize flatbuffers::Vector to std::vec::Vec conversions,\nusing the unstable trusted_len feature.\n\nInternally, enables an optimization in src/alloc/vec/spec_extend.rs:\nPreviously, unpacking a flatbuffers::Vector called\nSpecExtend::extend_desugared fallback, which inhibits vectorization\n(due to a branch before every element move).  Declaring TrustedLen\nallows SpecExtend::extend_trusted, which LLVM can often vectorize\ninto a memcpy.\n\nFor [ubyte] vectors in particular, this turns a rather expensive\nloop of \u0027mov BYTE PTR [rax+r13*1], bpl\u0027 into a `call memcpy`.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "600d6d9c194698cfa953f4a969aa3de69356e798",
      "old_mode": 33188,
      "old_path": "rust/flatbuffers/src/lib.rs",
      "new_id": "ed2bc173de9cd4b74148004195562b4b934cf501",
      "new_mode": 33188,
      "new_path": "rust/flatbuffers/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "6c559b43930f524a8dd4495c1979c688d329f600",
      "old_mode": 33188,
      "old_path": "rust/flatbuffers/src/vector.rs",
      "new_id": "2078a76df06e638999809a183622000be2439c2b",
      "new_mode": 33188,
      "new_path": "rust/flatbuffers/src/vector.rs"
    }
  ]
}
