api-parity-rs-macros 0.0.1

Attribute macros for api-parity-rs (#[parity], #[parity_impl]).
Documentation
  • Coverage
  • 100%
    3 out of 3 items documented0 out of 2 items with examples
  • Size
  • Source code size: 14.44 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 307.59 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 10s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • franciscoabsampaio

Attribute macros for api-parity-rs (port-side plugin).

Domain-agnostic: the path value can name a PySpark API, a REST endpoint, a TypeScript type — anything api-parity can left-join on.

Two forms:

  • #[parity_impl(...)] on an impl block. Its path (if any) acts as a prefix for relative child paths; if path AND status are both present, an entry is also registered for the impl itself, with the implementation set to the type name (e.g. SparkSession).
  • #[parity(...)] on a method or free fn. Inside an #[parity_impl], a leading . in path (e.g. .builder) is replaced at compile time with parent_path + child (e.g. pyspark.sql.session.SparkSession.builder).

Recognized arguments:

  • path = "..." (required to emit an entry).
  • status = Implemented | Partial | Unimplemented (required to emit an entry).
  • since = "...", comment = "...", issue = 42 (optional).
  • status = Unimplemented requires a comment — the whole point of a stub is that the comment explains why it's unimplemented.