steam-user-impl 0.1.0

Internal proc-macros for the `steam-user` crate. Do not depend on this crate directly — use `steam-user`; this crate's API is unstable and may change without notice.
Documentation
  • Coverage
  • 100%
    2 out of 2 items documented0 out of 1 items with examples
  • Size
  • Source code size: 11.91 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 295.51 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 18s Average build duration of successful builds.
  • all releases: 18s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • lengoclongk59

Procedural macros for the steam-user crate.

Provides #[steam_endpoint(METHOD, host = ..., path = ..., kind = ...)], which annotates a method that issues an HTTP call to a Steam network endpoint. The macro:

  1. Wraps the function with #[tracing::instrument] so every call carries structured fields (steam.endpoint.method/host/path/kind and steam.module). Args are skipped via skip(...) to avoid logging secrets — self plus any param whose name is in [SENSITIVE_PARAMS].
  2. Emits an inventory::submit! entry so all annotated endpoints are discoverable at runtime via inventory::iter::<EndpointInfo>().

The macro generates paths under crate::endpoint::*, so it is intended to be used from inside the steam-user crate. Generated paths also assume inventory and tracing are direct dependencies of the using crate.