about summary refs log tree commit diff
path: root/library/std/src/sys/unix/ext/net/mod.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-04-25 01:57:10 +0000
committerbors <bors@rust-lang.org>2021-04-25 01:57:10 +0000
commitf7c468fe9a1448b1f6ceee6a4c831fe6122a54f0 (patch)
treec068cc9a2a5b1aa8b29d30d48fd551f813067a58 /library/std/src/sys/unix/ext/net/mod.rs
parentb56b175c6c3d77f66793b2062b6325f822c87136 (diff)
parentba361428509ddabfcee5b4274d4068d4d612f963 (diff)
downloadrust-f7c468fe9a1448b1f6ceee6a4c831fe6122a54f0.tar.gz
rust-f7c468fe9a1448b1f6ceee6a4c831fe6122a54f0.zip
Auto merge of #80339 - jyn514:no-span, r=GuillaumeGomez
Calculate `span` info on-demand

- Add helper `attr_span` for common reused function
- Stop storing `Span`s on `Item` directly; calculate them on demand instead
- Special case modules, which have different spans depending on whether
  you use inner or outer attributes
- Special case impls with fake IDs, which can have either dummy spans (for auto traits) or the DefId of the impl block (for blanket impls)
- Use a fake ID for primitives instead of the ID of the crate; this lets
  `source()` know that it should use a dummy span instead of the span of
  the crate.

This shrinks `Item` from 48 to 40 bytes.

Helps with https://github.com/rust-lang/rust/issues/76382.
Diffstat (limited to 'library/std/src/sys/unix/ext/net/mod.rs')
0 files changed, 0 insertions, 0 deletions