{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreidgocrldbftftyzs2oznex76kwlqhlz2c7ljgyzzrwur3djxkgg3q",
    "uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mhccbequkee2"
  },
  "path": "/t/introduce-a-way-to-construct-range-from-start-length/24073?page=2#post_31",
  "publishedAt": "2026-03-17T21:29:26.000Z",
  "site": "https://internals.rust-lang.org",
  "textContent": "yaksher:\n\n> If `a ..+ b` was implemented as syntax sugar for `a .. (a + b)`\n\nIt can't be exactly this, because people will expect `a` to be evaluated only once. It has to be something like `{ let $temp = a; $temp .. ($temp + b) }` instead, and that runs us into the issues discussed up above with what happens when `a` isn't `Copy`.\n\nPersonally I'd be fine with a requirement for `a` to be `Copy` though. My reaction to the \"what about `\"a\"..\"z\"`?\" example up above is \"I really _don't_ want people spelling that `\"a\" ..+ 26`\" (not least because they probably should have written `\"a\" ..+ 25`, but +26 is the one that _looks_ right if someone's not reading carefully).",
  "title": "Introduce a way to construct Range from start + length"
}