synonym 0.1.6

Customizable derive macro to create newtypes. It peeks into the underlying type to choose which traits should be implemented.
Documentation
Build #2365656 2025-07-31 03:30:16

# rustc version rustc 1.90.0-nightly (3048886e5 2025-07-30)

# docs.rs version docsrs 0.6.0 (e18d034e 2025-07-29)

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/synonym-0.1.6/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/synonym-0.1.6/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250730-1.90.0-nightly-3048886e5\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 05b907257c5407b8677b8fbb929e833e77369d4b78bea01337a261e88b05165d [INFO] running `Command { std: "docker" "start" "-a" "05b907257c5407b8677b8fbb929e833e77369d4b78bea01337a261e88b05165d", kill_on_drop: false }` [INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Documenting synonym v0.1.6 (/opt/rustwide/workdir) [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:54:51 [INFO] [stderr] | [INFO] [stderr] 54 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `2` [INFO] [stderr] --> src/lib.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | //! | .value() [2] | Value | v | v | v | v | v | v | v | [INFO] [stderr] | ^ no item named `2` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `4` [INFO] [stderr] --> src/lib.rs:66:98 [INFO] [stderr] | [INFO] [stderr] 66 | //! | From<&'a str> | String | | | | v | v [4] | | | [INFO] [stderr] | ^ no item named `4` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `3` [INFO] [stderr] --> src/lib.rs:68:21 [INFO] [stderr] | [INFO] [stderr] 68 | //! | Deref<Inner> [3] | Deref | | | | | | | | [INFO] [stderr] | ^ no item named `3` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `3` [INFO] [stderr] --> src/lib.rs:69:21 [INFO] [stderr] | [INFO] [stderr] 69 | //! | DerefMut [3] | DerefMut | | | | | | | | [INFO] [stderr] | ^ no item named `3` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:75:51 [INFO] [stderr] | [INFO] [stderr] 75 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `5` [INFO] [stderr] --> src/lib.rs:81:16 [INFO] [stderr] | [INFO] [stderr] 81 | //! | Display [5] | Display | v | v | v | v | v | v | v | [INFO] [stderr] | ^ no item named `5` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:86:51 [INFO] [stderr] | [INFO] [stderr] 86 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `6` [INFO] [stderr] --> src/lib.rs:93:12 [INFO] [stderr] | [INFO] [stderr] 93 | //! Serde [6] [INFO] [stderr] | ^ no item named `6` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:95:51 [INFO] [stderr] | [INFO] [stderr] 95 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `7` [INFO] [stderr] --> src/lib.rs:100:12 [INFO] [stderr] | [INFO] [stderr] 100 | //! Maths [7] [INFO] [stderr] | ^ no item named `7` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:102:51 [INFO] [stderr] | [INFO] [stderr] 102 | //! | | skip/force | `Integer` [1] | `NonZero*` | `Float` | `String` | `Box<str>` | `&'static str` | `char` | [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `1` [INFO] [stderr] --> src/lib.rs:114:6 [INFO] [stderr] | [INFO] [stderr] 114 | //! [1] Integers are: `u8`, `u16`, `u32`, `u64`, `u128`, `usize`, `i8`, `i16`, `i32`, `i64`, `i128`, `isize` [INFO] [stderr] | ^ no item named `1` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `2` [INFO] [stderr] --> src/lib.rs:115:6 [INFO] [stderr] | [INFO] [stderr] 115 | //! [2] .value() returns `Inner` for `Copy` types and `&Inner` for non-`Copy` types [INFO] [stderr] | ^ no item named `2` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `3` [INFO] [stderr] --> src/lib.rs:116:6 [INFO] [stderr] | [INFO] [stderr] 116 | //! [3] `Deref` and `DerefMut` are never implemented unless they are forced with `#[synonym(force(Deref,DerefMut))]` [INFO] [stderr] | ^ no item named `3` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `4` [INFO] [stderr] --> src/lib.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | //! [4] In constrast to other strings, `FromStr` for `Box<str>` synonyms uses `Inner::From<&'str>` instead of `Inner::FromStr` since ther... [INFO] [stderr] | ^ no item named `4` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `5` [INFO] [stderr] --> src/lib.rs:118:6 [INFO] [stderr] | [INFO] [stderr] 118 | //! [5] Display implementation can be configured, see below [INFO] [stderr] | ^ no item named `5` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `6` [INFO] [stderr] --> src/lib.rs:119:6 [INFO] [stderr] | [INFO] [stderr] 119 | //! [6] Only provided when feature `with_serde` is enabled [INFO] [stderr] | ^ no item named `6` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `7` [INFO] [stderr] --> src/lib.rs:120:6 [INFO] [stderr] | [INFO] [stderr] 120 | //! [7] This is subject to change [INFO] [stderr] | ^ no item named `7` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Inner` [INFO] [stderr] --> src/lib.rs:64:12 [INFO] [stderr] | [INFO] [stderr] 64 | //! | AsRef<Inner> | AsRef | v | v | v | v | v | v | v | [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(rustdoc::invalid_html_tags)]` on by default [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 64 | //! | `AsRef<Inner>` | AsRef | v | v | v | v | v | v | v | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `str` [INFO] [stderr] --> src/lib.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | //! | Borrow<str> | String | | | | v | v | v | | [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 65 | //! | `Borrow<str>` | String | | | | v | v | v | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `String` [INFO] [stderr] --> src/lib.rs:67:11 [INFO] [stderr] | [INFO] [stderr] 67 | //! | From<String> | String | | | | | v | | | [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 67 | //! | `From<String>` | String | | | | | v | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Inner` [INFO] [stderr] --> src/lib.rs:68:12 [INFO] [stderr] | [INFO] [stderr] 68 | //! | Deref<Inner> [3] | Deref | | | | | | | | [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 68 | //! | `Deref<Inner>` [3] | Deref | | | | | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Inner` [INFO] [stderr] --> src/lib.rs:70:11 [INFO] [stderr] | [INFO] [stderr] 70 | //! | From<Inner> | From | v | v | v | v | v | v | v | [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 70 | //! | `From<Inner>` | From | v | v | v | v | v | v | v | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:104:10 [INFO] [stderr] | [INFO] [stderr] 104 | //! | Add<Self>=Self | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 104 | //! | `Add<Self>`=Self | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:105:16 [INFO] [stderr] | [INFO] [stderr] 105 | //! | AddAssign<Self> | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 105 | //! | `AddAssign<Self>` | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:106:10 [INFO] [stderr] | [INFO] [stderr] 106 | //! | Sub<Self>=Self | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 106 | //! | `Sub<Self>`=Self | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:107:16 [INFO] [stderr] | [INFO] [stderr] 107 | //! | SubAssign<Self> | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 107 | //! | `SubAssign<Self>` | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:108:10 [INFO] [stderr] | [INFO] [stderr] 108 | //! | Mul<Self>=Self | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 108 | //! | `Mul<Self>`=Self | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | //! | MulAssign<Self> | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 109 | //! | `MulAssign<Self>` | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:110:10 [INFO] [stderr] | [INFO] [stderr] 110 | //! | Div<Self>=Self | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 110 | //! | `Div<Self>`=Self | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `Self` [INFO] [stderr] --> src/lib.rs:111:16 [INFO] [stderr] | [INFO] [stderr] 111 | //! | DivAssign<Self> | Number | v | | v | | | | [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 111 | //! | `DivAssign<Self>` | Number | v | | v | | | | [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: `synonym` (lib doc) generated 33 warnings [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.42s [INFO] [stderr] Generated /opt/rustwide/target/doc/synonym/index.html [INFO] running `Command { std: "docker" "inspect" "05b907257c5407b8677b8fbb929e833e77369d4b78bea01337a261e88b05165d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "05b907257c5407b8677b8fbb929e833e77369d4b78bea01337a261e88b05165d", kill_on_drop: false }` [INFO] [stdout] 05b907257c5407b8677b8fbb929e833e77369d4b78bea01337a261e88b05165d