Skip to main content

Semantic

Enum Semantic 

Source
pub enum Semantic {
Show 16 variants Keyword, Symbol, KeywordArg, String, Number, Literal, Comment, Accent, Muted, Error, Warning, Info, Hint, Added, Removed, Unchanged,
}

Variants§

§

Keyword

Language keywords — defcaixa, defteia, let, lambda, etc.

§

Symbol

Non-keyword symbols — identifiers, function names, variant names.

§

KeywordArg

:keyword-positioned atoms.

§

String

"string literals".

§

Number

42, 3.14.

§

Literal

#t, #f, nil.

§

Comment

; comments.

§

Accent

Primary accent — useful for highlights, carets, focused tokens.

§

Muted

Dim text — metadata, line numbers, help text.

§

Error

§

Warning

§

Info

§

Hint

§

Added

§

Removed

§

Unchanged

Implementations§

Source§

impl Semantic

Source

pub const fn is_keyword(&self) -> bool

Source

pub const fn is_symbol(&self) -> bool

Source

pub const fn is_keyword_arg(&self) -> bool

Source

pub const fn is_string(&self) -> bool

Source

pub const fn is_number(&self) -> bool

Source

pub const fn is_literal(&self) -> bool

Source

pub const fn is_comment(&self) -> bool

Source

pub const fn is_accent(&self) -> bool

Source

pub const fn is_muted(&self) -> bool

Source

pub const fn is_error(&self) -> bool

Source

pub const fn is_warning(&self) -> bool

Source

pub const fn is_info(&self) -> bool

Source

pub const fn is_hint(&self) -> bool

Source

pub const fn is_added(&self) -> bool

Source

pub const fn is_removed(&self) -> bool

Source

pub const fn is_unchanged(&self) -> bool

Source§

impl Semantic

Source

pub const ALL: &'static [Self]

Every variant of Semantic in declaration order.

The single canonical arm-list every substrate consumer that has to walk the closed 15-arm semantic-style partition (the two theme overlays’ exhaustive-match resolver functions blackmatter_dark_color / blackmatter_light_color in crate::blackmatter, the future LSP-side per-Semantic SemanticTokenType dispatch at caixa-lsp/src/main.rs, a future feira lint --list-styles operator-facing enumeration verb) reads for. Peer of the sibling closed-set fieldless typed enums’ ALL slices already carried by [caixa_core::CaixaKind] / [caixa_core::supervisor::RestartStrategy] / [caixa_core::supervisor::RestartPolicy] / [caixa_core::aplicacao::PlacementStrategy] / [caixa_core::upgrade::UpgradeInstruction] / caixa_lint::diagnostic::Severity / caixa_lint::diagnostic::FixSafety / caixa_arch::InvariantKind / caixa_arch::ArchVerdict / caixa_provedor::FerriteRuntime closed-set typed-enum discriminator axes.

Source

pub const WIRE_NAMES: &'static [&'static str]

Exhaustive accept-set roster on the Semantic closed-set enum’s canonical-lowercase-kebab wire-form axis — the single slice every consumer that enumerates the accepted semantic-style byte-strings dispatches through (a future feira lint --list-styles operator-facing enumeration verb rendering the accepted-tag list, a future caixa-lsp-side per-SemanticTokenType registration walk that enumerates every accepted per-arm kebab byte-string on startup, a future caixa.nvim per-highlight-group re-loader binding every accepted kebab identifier back to the typed enum, a future blackmatter-shell per-arm data-semantic="<kebab>" DOM-attribute emission walk, a tracing::field::valuable::Value::List structured-log accepted-style emit on the paint-side emission path). Routed byte-for-byte through the paired CAIXA_THEME_SEMANTIC_WIRE_KEYWORD / CAIXA_THEME_SEMANTIC_WIRE_SYMBOL / CAIXA_THEME_SEMANTIC_WIRE_KEYWORD_ARG / CAIXA_THEME_SEMANTIC_WIRE_STRING / CAIXA_THEME_SEMANTIC_WIRE_NUMBER / CAIXA_THEME_SEMANTIC_WIRE_LITERAL / CAIXA_THEME_SEMANTIC_WIRE_COMMENT / CAIXA_THEME_SEMANTIC_WIRE_ACCENT / CAIXA_THEME_SEMANTIC_WIRE_MUTED / CAIXA_THEME_SEMANTIC_WIRE_ERROR / CAIXA_THEME_SEMANTIC_WIRE_WARNING / CAIXA_THEME_SEMANTIC_WIRE_INFO / CAIXA_THEME_SEMANTIC_WIRE_HINT / CAIXA_THEME_SEMANTIC_WIRE_ADDED / CAIXA_THEME_SEMANTIC_WIRE_REMOVED / CAIXA_THEME_SEMANTIC_WIRE_UNCHANGED lifted pub const scalars in variant declaration order so a future arm rebrand touches one const rather than an open-coded sixteen-site parallel-maintained array literal.

Peer of the sibling closed-set typed enums’ [caixa_core::CaixaKind::WIRE_NAMES] (bd708bd), [caixa_core::supervisor::RestartStrategy::WIRE_NAMES] (3033f45), [caixa_core::supervisor::RestartPolicy::WIRE_NAMES] (ce9412b), [caixa_core::aplicacao::PlacementStrategy::WIRE_NAMES] (3e5b194), [caixa_core::render::PathShapeViolation::WIRE_NAMES] (0330bd3), [caixa_core::CaixaDialeto::WIRE_NAMES] (0402726), caixa_arch::invariants::InvariantKind::WIRE_NAMES (78f5522), caixa_arch::report::ArchVerdict::WIRE_NAMES (ebddef0), caixa_lint::diagnostic::Severity::WIRE_NAMES (a199462), and caixa_lint::diagnostic::FixSafety::WIRE_NAMES (5837236) rosters — extends the paired exhaustive-roster axis onto the fifth outside-caixa-core closed-set fieldless typed enum on the caixa surface (the caixa-theme semantic-style axis, and the first inside caixa-theme), with caixa_provedor::FerriteRuntime remaining as the only outside-caixa-core closed-set fieldless typed enum whose paired exhaustive-roster axis is still open.

A future variant addition (a Namespace tier between Self::Symbol and Self::KeywordArg for the M4 tatara-lisp module system’s qualified-name semantic-token dispatch, a Deleted tier for a hard-delete-mark distinct from Self::Removed the future 3-way diff surface grows — both trajectory items the sibling Self::ALL doc block already names) extends this roster as a single edit — the compiler- checked exhaustiveness on Self::as_str’s match and the paired [tests::semantic_wire_names_covers_every_arm] pin’s length / membership / order / round-trip gates keep the roster, the emitter Self::as_str, and the parser Self::from_wire in structural lockstep by construction.

Pinned load-bearing by [tests::semantic_wire_names_covers_every_arm].

Source

pub const fn as_str(self) -> &'static str

Canonical kebab-case discriminator scalar for this variant — the single substrate-primitive &'static str projection every downstream consumer of the closed 16-arm Semantic partition (a future LSP-side per-Semantic SemanticTokenType name-mapping dispatch at caixa-lsp/src/main.rs, a future feira lint --list-styles operator-facing enumeration verb, a future caixa.nvim per-Semantic highlight-group name resolver that reaches for a stable kebab identifier per arm, a future blackmatter-shell per-arm classname the terminal emitter composes into a data-semantic="<kebab>" attribute) reaches through. Kebab-case matches the peer gen_platform::IsVariant-derived kebab discriminant convention the sibling closed-set typed enums ([caixa_core::CaixaKind::as_str], [caixa_core::supervisor::RestartStrategy::as_str], [caixa_core::supervisor::RestartPolicy::as_str], [caixa_core::aplicacao::PlacementStrategy::as_str], [caixa_core::upgrade::UpgradeInstruction::as_str], caixa_lint::diagnostic::Severity::as_str, caixa_lint::diagnostic::FixSafety::as_str, caixa_arch::InvariantKind::as_str, caixa_arch::ArchVerdict::as_str, caixa_provedor::FerriteRuntime::variant_slug) already emit on their canonical &'static str projection axis.

The 16 arms return the kebab-case forms of their PascalCase variant names (Keyword"keyword", KeywordArg"keyword-arg", Unchanged"unchanged", etc.), matching the peer closed-set typed-enum canonical byte-string conventions.

Peer of the std::fmt::Display and AsRef<str> impls on this enum, which both route through this accessor so format!("{s}"), s.as_str(), and <Semantic as AsRef<str>>::as_ref(&s) resolve to the same per-arm byte-string.

Source

pub fn from_wire(s: &str) -> Option<Self>

Reverse projection on the Semantic closed 16-arm enum’s canonical kebab-tag axis — parses a "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" wire byte-string back to the typed enum, or returns None when s lies outside the 16-arm accept-set Self::as_str emits. The single &str → Self projection every future re-entry point on the caixa-theme semantic-style axis dispatches through (a future feira lint --list-styles operator-facing enumeration verb hydrating a per-arm row from a stored kebab identifier back to the typed enum before rendering, a future caixa-lsp-side per-SemanticTokenType re-parse binding a prior Self::as_str output back to the typed enum for per-Semantic-highlight dispatch, a future caixa.nvim per- Semantic highlight-group resolver re-loading a stored kebab identifier back to the typed enum, a future blackmatter-shell per-arm classname reverse-lookup binding a data-semantic="<kebab>" DOM attribute back to the typed enum for per-arm style dispatch, a tracing::field::Value::Str-arm structured-log re-loader binding a prior emission’s Self::as_str output back to the typed enum for cross-run per-Semantic-paint-histogram diff) would have had to re-inline a 16-arm match s cascade that expressed no compile-time link back to the substrate primitive.

Same closed-set-reverse-projection discipline the sibling [caixa_core::CaixaKind::from_wire] (2aa6d23), [caixa_core::CaixaDialeto::from_wire] (d0e65ea), [caixa_core::supervisor::RestartStrategy::from_wire] (4eec29c), [caixa_core::supervisor::RestartPolicy::from_wire] (dd32ccf), [caixa_core::aplicacao::PlacementStrategy::from_wire] (18c7342), [caixa_core::dep::DepList::from_wire] (45ee563), [caixa_core::render::PathShapeViolation::from_wire] (aebd9c6), caixa_arch::invariants::InvariantKind::from_wire (b9e4e61), caixa_arch::report::ArchVerdict::from_wire (6afe564), caixa_lint::diagnostic::Severity::from_wire (5afff0e), and caixa_lint::diagnostic::FixSafety::from_wire (bd505a1) typed enums carry on the peer wire-side str → Self axes — extends the substrate-wide (as_str, from_wire) round-trip family onto the caixa-theme closed-set fieldless typed-enum axis (the first closed-set fieldless typed enum on caixa-theme to converge on the reverse-projection discipline), matching the same two-way str ↔ Self round-trip every sibling closed-set enum already carries. Method-named from_wire (not from_str) to match the peer shapes verbatim and side-step a clippy::should_implement_trait lint that a plain from_str name would otherwise trigger without paired std::str::FromStr impl scaffolding this axis does not carry today. Returns Option<Self> (rather than Result<Self, _>) to match the peer shapes: the caller picks the diagnostic form appropriate for its use site (a feira lint --list-styles CLI arg-parse renders its own per-verb error message; a future admission-webhook rejection body wraps the None outcome with the accepted-set enumeration Semantic::ALL.iter().map(…) for operator diagnostics).

Pinned load-bearing at the substrate-primitive level by [tests::semantic_from_wire_accepts_every_as_str_output] (round-trip witness against the peer Self::as_str axis) and [tests::semantic_from_wire_rejects_unknown_byte_strings] (rejection witness against silent accept-set widening).

Trait Implementations§

Source§

impl AsRef<[u8]> for Semantic

Trait-idiomatic byte-view projection on the Semantic closed-set caixa-theme semantic-style typed enum — routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor’s .as_bytes() byte-tail so every consumer that binds a Semantic through the standard-library <T: AsRef<[u8]>> trait bound (a future std::io::Write::write_all-bound theme-preview per-token byte-sink; a byte-keyed std::collections::HashMap <K: AsRef<[u8]>, V> per-semantic-arm palette-dispatch table lookup whose entry-key trait bound rules out the sibling AsRef<str> str-view projection; a future blake3::Hasher::update / ring::digest::Context::update / sha2::Sha256::update byte-input surface on any future per-theme content-address digest folded into a caixa-lsp semantic-token audit closure) reaches the substrate primitive through one trait dispatch rather than open-coding the two-hop sem.as_str().as_bytes() composition at every call site.

Rust’s standard library carries impl AsRef<[u8]> for str and impl AsRef<[u8]> for String, so the two-hop composition sem.as_str().as_bytes() is reachable through the pre-existing str-view axis alone. But that two-hop shape has no compile-time link back to the byte-projection axis, forces every downstream <T: AsRef<[u8]>>-bound consumer to open-code the composition at every call site, and admits a silent split whenever a future call site takes a sibling reverse-projection axis whose .as_bytes() byte-tail carries no compile-time byte-view surface. The lifted single-hop impl closes the byte-view axis so every future <T: AsRef<[u8]>>-bound consumer reaches the substrate primitive through one trait dispatch, and every future arm addition (a Namespace tier between Semantic::Symbol and Semantic::KeywordArg for the M4 tatara-lisp module system’s qualified-name semantic-token dispatch, a Deleted tier for a hard-delete-mark distinct from Semantic::Removed the future 3-way diff surface grows — both trajectory items the sibling Semantic::ALL doc block already names) grows the byte-view axis through one edit on the substrate-primitive Semantic::as_str accessor.

Extends the substrate-wide trait-idiomatic byte-view axis onto the fifth outside-caixa-core closed-set fieldless typed enum on the caixa surface — matching the trajectory the caixa-core-internal [caixa_core::CaixaKind] first-mover impl (69d8d86), [caixa_core::CaixaDialeto] second-mover impl (8151347), [caixa_core::dep::DepList] third-mover impl (05ffaca), the M3-mesh-primitive-defining [caixa_core::aplicacao::PlacementStrategy] impl (daa8705), [caixa_core::aplicacao::RateLimitUnit] impl (4867e0f), the first- mover outside-caixa-core [caixa_arch::invariants::InvariantKind] impl (b5baf7d), the second-mover outside-caixa-core [caixa_arch::report::ArchVerdict] impl (0e0057a), the third-mover outside-caixa-core caixa_lint::Severity impl (1e65136), and the fourth-mover outside-caixa-core caixa_lint::FixSafety impl (1da1afc) walked before it, plus the M2-OTP-shape [caixa_core::supervisor::RestartStrategy] (cd4c4e0) + [caixa_core::supervisor::RestartPolicy] (98b08fa), the M3-mesh-contratos [caixa_core::aplicacao::WitShape] (0e2d0f2), and the render-side [caixa_core::render::PathShapeViolation] (2c58220) peers. The paired Semantic::as_str accessor returns the canonical lowercase-kebab wire byte-string ("keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged") every blackmatter-shell data-semantic="<kebab>" DOM emit site, every caixa-lsp-side per-SemanticTokenType registration, every feira lint --list-styles per-arm enumeration, and every future M4 theme-overlay re-loader keys off. Leaves the last outside-caixa-core closed-set fieldless typed-enum peer ([caixa_provedor::FerriteRuntime]) as the campaign’s next mechanical one-impl extension against the substrate-primitive as_str accessor it already carries.

Pinned load-bearing by [tests::semantic_as_ref_bytes_routes_through_as_str_accessor] (fail-before-pass-after byte-parity pin against Semantic::as_str .as_bytes() across the sixteen-arm Semantic::ALL emit-set, cross-axis witness against the paired str-view AsRef<str> / std::fmt::Display / Semantic::as_str axes’ .as_bytes() byte-tails, cross-axis witness against the paired reverse-projection {&'static str, String, Cow<'static, str>, Box<str>, std::sync::Arc<str>, std::rc::Rc<str>} return-shape axes’ .as_bytes() byte-tails, a <T: AsRef<[u8]>>-bound-consumer witness on both owned and borrowed input surfaces, and a blake3::Hasher::update-shape byte-input surface witness routed through the <T: AsRef<[u8]>>-bound consumer axis to reach the caixa-lacre compounding target).

Source§

fn as_ref(&self) -> &[u8]

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<str> for Semantic

Substrate-canonical AsRef<str> projection on the caixa-theme Semantic closed-set fieldless typed enum — routes through the same Semantic::as_str pub const fn scalar accessor the paired std::fmt::Display impl already reaches for.

Peer of the sibling AsRef<str> impls the substrate carries on [caixa_core::CaixaKind], [caixa_core::CaixaVersion], [caixa_core::CaixaDialeto], [caixa_core::dep::DepList], [caixa_core::supervisor::RestartStrategy], [caixa_core::supervisor::RestartPolicy], [caixa_core::aplicacao::PlacementStrategy], [caixa_core::aplicacao::RateLimitUnit], caixa_lint::diagnostic::Severity, caixa_arch::InvariantKind, caixa_arch::ArchVerdict, caixa_provedor::FerriteRuntime — extends the substrate-wide (as_str, AsRef<str>, Display) canonical-projection triple onto the caixa-theme closed-set typed-enum axis, so a future consumer bound through the trait-idiomatic .as_ref() (a HashMap::get::<str>(sem.as_ref()) per-Semantic style-lookup, a future caixa-lsp SemanticTokenType::new(sem.as_ref()) registration site, any impl AsRef<str>-bound generic function) reaches the same kebab byte-string Semantic::as_str returns rather than an open-coded .as_str() projection at every wire-up.

Source§

fn as_ref(&self) -> &str

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Clone for Semantic

Source§

fn clone(&self) -> Semantic

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for Semantic

Source§

impl Debug for Semantic

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for Semantic

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Display for Semantic

std::fmt::Display routed through Semantic::as_str, so the pretty-printed byte-string every consumer that formats the semantic style as user-facing text lands on (a future feira lint --list-styles operator-facing enumeration verb’s per-arm line, a future caixa-lsp diagnostic-source line naming the offending semantic, a future caixa.nvim per-Semantic highlight-group name emitter, a tracing::field::display(&sem) structured-log recorder on the paint-side emit path) reaches for the same lifted kebab-case per-arm byte-string Semantic::as_str returns.

Peer of the sibling std::fmt::Display impls on the closed-set typed enums the substrate carries — [caixa_core::CaixaKind], [caixa_core::supervisor::RestartStrategy], [caixa_core::supervisor::RestartPolicy], [caixa_core::aplicacao::PlacementStrategy], [caixa_core::upgrade::UpgradeInstruction], caixa_lint::diagnostic::Severity, caixa_lint::diagnostic::FixSafety, caixa_arch::InvariantKind, caixa_arch::ArchVerdict, caixa_provedor::FerriteRuntime — extended to the second-to-last un-lifted caixa-theme closed-set fieldless typed enum on the substrate-wide (as_str, AsRef<str>, Display) canonical-projection triple ratchet the prior lifts converged onto.

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Semantic

Source§

impl From<&Semantic> for &'static str

Trait-idiomatic borrowed-input forward projection on the Semantic closed 16-arm caixa-theme semantic-style axis onto the &'static str axis — the borrowed-input companion to the paired owned-input [From<Semantic> for &'static str] impl immediately above. Routes byte-for-byte through the same substrate-primitive Semantic::as_str pub const fn accessor so every consumer that binds a &Semantic through the standard-library .into() / [From<&Self> for &'static str] axis (a Semantic::ALL.iter().map(<&'static str>::from).collect::<Vec<_>>() per-arm accept-set materializer — whose iterator over &'static [Semantic] yields &Semantic, not Semantic, so the owned-input From<Semantic> axis alone forces every call site through an explicit .copied() / dereference / Copy-bound restatement rather than the direct trait-idiomatic projection; a future feira lint --list-styles operator-facing enumeration verb composed via Semantic::ALL.iter().map(Into::into); a future caixa-lsp per-SemanticTokenType registration walk that borrows &Semantic off a stored per-style row; a future caixa.nvim per- highlight-group re-loader that borrows &Semantic off the loaded theme-overlay table; a future HashMap::<&'static str, _>::from_iter(Semantic::ALL.iter().map( |sem| (<&'static str>::from(sem), 0))) per-Semantic-paint histogram seed a future blackmatter-shell per-arm data-semantic="<kebab>" DOM-attribute emit path composes) reaches the same 16-arm "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" canonical-lowercase kebab emit-set the paired owned-input [From<Semantic> for &'static str], the sibling std::fmt::Display, AsRef<str>, and Semantic::as_str surfaces already return.

Fifteenth and final peer on the substrate-wide trait-idiomatic borrowed-input &'static str-returning forward-projection family already carried by [caixa_core::dep::DepList] (64aa742, first-mover), [caixa_core::CaixaKind], [caixa_core::CaixaDialeto], [caixa_core::supervisor::RestartStrategy], [caixa_core::supervisor::RestartPolicy], [caixa_core::aplicacao::PlacementStrategy], [caixa_core::aplicacao::WitShape], [caixa_core::aplicacao::RateLimitUnit], [caixa_core::render::PathShapeViolation] (cdf4e95, first render- side arm), [caixa_arch::invariants::InvariantKind] (238d886, first outside-caixa-core arm), [caixa_arch::report::ArchVerdict] (73bda50), caixa_lint::diagnostic::Severity (2b9003f), caixa_lint::diagnostic::FixSafety (d8769ab), and caixa_provedor::FerriteRuntime (676d693). Rust’s From trait does not auto-derive the From<&Self> sibling from a From<Self> impl (the blanket impl<T, U> From<&T> for U where T: Copy, U: From<T> does not exist in core), so every closed-set typed enum that carries the owned-input axis but not the borrowed-input axis forces every borrowed-input call site through a .copied() / <&'static str>::from(*sem) / sem.as_str() detour whose type bounds have no compile-time link to the substrate primitive. Lifting the borrowed-input axis on the caixa-theme semantic-style 16-arm closed-set fieldless typed enum closes that gap on the same trajectory the paired owned-input axis ([impl From<Semantic> for &'static str] immediately above) already opened, and closes the trait-idiomatic borrowed-input &'static str-returning axis on the last remaining substrate-wide closed-set fieldless typed enum whose borrowed-input axis was still open — the substrate-wide 2×2-completion campaign now covers every closed-set fieldless typed enum on the caixa surface on the borrowed-input &'static str-returning axis.

Pinned load-bearing by [tests::semantic_from_borrowed_into_static_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the 16-arm emit-set via a borrowed input, plus a const-context materialization witness for the &'static str lifetime promise) and [tests::semantic_from_owned_and_borrowed_into_static_str_agree_on_every_arm] (cross-axis partition pin against the paired owned-input [From<Semantic> for &'static str] impl, plus a .iter().map(Into::into) pipe witness over Semantic::ALL whose iterator yields &Semantic by construction so this borrowed-input axis is what routes the pipe through the substrate-primitive accessor without a spurious Copy deref).

Source§

fn from(sem: &Semantic) -> &'static str

Converts to this type from the input type.
Source§

impl From<&Semantic> for String

Trait-idiomatic borrowed-input, owned-String output forward projection on the Semantic closed 16-arm caixa-theme semantic- style axis — the borrowed-input companion to the paired owned- input [From<Semantic> for String] (5ea146c) immediately above, the paired borrowed-input [From<&Semantic> for &'static str] (ffc0f26), and the paired owned-input [From<Semantic> for &'static str] siblings above. Routes byte- for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via str::to_owned so every consumer that binds a Semantic through the standard-library .into() / [From<&Self> for String] axis reaches the same 16-arm "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" canonical-lowercase kebab emit-set the paired std::fmt::Display, AsRef<str>, Semantic::as_str, and the three other trait-idiomatic forward-projection impls already return — no sem.as_str().to_owned() / String::from(*sem) (with a spurious Copy deref) / sem.to_string() (through std::fmt::Display) detour whose type bounds have no compile- time link to the substrate primitive.

Fills the last remaining corner of the substrate-wide {Self, &Self} × {&'static str, String} 2×2 trait-idiomatic projection family on the sole closed-set fieldless typed enum on the caixa-theme surface — and, by construction, the final corner on the entire substrate-wide closed-set fieldless typed- enum roster on the caixa surface, closing the substrate-wide 2×2-completion campaign that opened on [caixa_core::supervisor::RestartStrategy] (579385f, first-mover on the borrowed-input owned-String axis). Rust’s standard library carries no blanket impl<T: AsRef<str>> From<&T> for String (nor an impl<T: fmt::Display> From<&T> for String), so every borrowed- input owned-string call site — a future serde_json::Value::String(String::from(&sem)) structured-payload composer over a borrowed per-style row where the [serde_json::Value::String] arm typing demands an owned String and the sibling &'static str-returning axes force an explicit .to_owned() / String::from restatement, a future Semantic::ALL.iter().map(String::from).collect::<Vec<_>>() per- arm accept-set materializer on a future feira lint --list-styles operator-facing enumeration verb whose iterator yields &Semantic by construction (so the borrowed-input owned-String axis is what routes the pipe through the substrate-primitive Semantic::as_str accessor without a spurious .copied() / Copy-bound dereference), a future HashMap::<String, usize>::from_iter(Semantic::ALL.iter().map(|sem| (String::from(sem), 0))) per-Semantic-paint histogram seed a future blackmatter-shell per-arm data-semantic="<kebab>" DOM-attribute emit path composes off a borrowed &Semantic off the loaded theme-overlay table, a future caixa-lsp per-SemanticTokenType registration walk borrowing off a stored per-style row, a future caixa.nvim per-highlight-group re-loader borrowing off the loaded theme- overlay table where the runtime stores the owned kebab identifier as String — otherwise resolves through the detour above.

Closing this corner locks the caixa-theme semantic-style enum’s whole 2×2 trait-idiomatic projection family onto a single Semantic::as_str-routed emit-set — any future arm addition (a Namespace tier between [Self::Symbol] and [Self::KeywordArg] for the M4 tatara-lisp module system’s qualified-name semantic- token dispatch, a Deleted tier for a hard-delete-mark distinct from [Self::Removed] the future 3-way diff surface grows — both trajectory items the sibling Semantic::ALL doc block already names) reaches every projection path through exactly one caixa- theme edit on the Semantic::as_str pub const fn accessor, and the partition pin trips at test time on the first detour that drifts a corner off.

Sixteenth and final peer on the substrate-wide trait-idiomatic borrowed-input, owned-String output forward-projection family, closing the substrate-wide 2×2-completion campaign across every closed-set fieldless typed enum on the caixa surface — opened on [caixa_core::supervisor::RestartStrategy] (579385f), extended through [caixa_core::supervisor::RestartPolicy] (8465740), [caixa_core::dep::DepList] (e0cb617), [caixa_core::CaixaKind] (e76436d), [caixa_core::CaixaDialeto] (d3c0d1d), [caixa_core::aplicacao::PlacementStrategy] (d3dc000), [caixa_core::aplicacao::WitShape] (d638fd3), [caixa_core::aplicacao::RateLimitUnit] (6424e45 — closing the whole M3 mesh-primitive triple’s 2×2 corner), [caixa_core::render::PathShapeViolation] (b90e193 — first outside-manifest-surface arm on this axis), [caixa_arch::invariants::InvariantKind] (3c3f66f — first outside-caixa-core arm), [caixa_arch::report::ArchVerdict] (3cfb3b5 — second outside- caixa-core arm), caixa_lint::diagnostic::Severity (9518ab9 — third outside-caixa-core arm), caixa_lint::diagnostic::FixSafety (807f67d — fourth outside- caixa-core arm), and caixa_provedor::FerriteRuntime (0caedec — fifth outside-caixa-core arm), and now this lift on the sixth-and-last outside-caixa-core closed-set enum — the caixa- theme semantic-style 16-arm axis every per-Semantic paint dispatch, every future caixa-lsp per-SemanticTokenType wire- up, every future caixa.nvim per-highlight-group re-loader, and every future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission keys off. Every future closed-set fieldless typed enum lifted onto the caixa surface picks up the same 2×2 trait- idiomatic projection family by construction as the substrate discipline.

Same three-path convergence discipline as the paired owned-input impl (this borrowed-input axis, the paired owned-input [From<Semantic> for String], and Semantic::as_str all route through the same 16-arm inline canonical-lowercase kebab byte-strings), so a future arm addition reaches every one of the paired forward-projection paths through exactly one caixa-theme edit on the Semantic::as_str pub const fn accessor.

The Semantic::as_str emit and Semantic::from_wire parse share the same 16 inline canonical-lowercase kebab byte-strings by construction — so the borrowed-input owned-String forward axis and the reverse TryFrom<&str> axis compose directly (via the owned-String’s String::as_str borrow) without an intermediate wire-vocab hop. The round-trip witness pin below locks this direct composition on the caixa-theme semantic-style enum’s borrowed-input owned-String axis pair.

Pinned load-bearing by [tests::semantic_from_borrowed_into_owned_string_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the 16-arm emit-set through the borrowed-input surface, plus a blanket- derived Into<String> shape witness) and [tests::semantic_from_borrowed_into_owned_string_agrees_with_paired_axes_on_every_arm] (cross-axis partition pin against every one of the four 2×2 corners — the paired owned-input owned-String [From<Semantic> for String] impl (5ea146c), the paired borrowed-input owned-[&'static str] [From<&Semantic> for &'static str] impl (ffc0f26), and the paired owned-input owned-[&'static str] [From<Semantic> for &'static str] impl — plus a ToString::to_string-through-std::fmt::Display byte-parity witness, plus a .iter().map(String::from) pipe witness over Semantic::ALL (whose iterator yields &Semantic by construction, so the borrowed-input owned-String axis is what routes the pipe through the substrate-primitive Semantic::as_str accessor without a spurious Copy deref), plus a direct round-trip witness through TryFrom<&str> on the owned-String’s String::as_str borrow that closes the two- way &Self → String → Self round-trip on the trait-idiomatic borrowed-input owned-String forward + reverse axis pair).

Source§

fn from(sem: &Semantic) -> String

Converts to this type from the input type.
Source§

impl From<&Semantic> for Cow<'static, str>

Trait-idiomatic borrowed-input forward projection on the sixteen- arm semantic-style Semantic closed-set fieldless typed enum onto the std::borrow::Cow<'static, str> axis — the borrowed-input companion to the paired owned-input [From<Semantic> for std::borrow::Cow<'static, str>] impl (0253688) immediately above, and the corner that closes the whole substrate- wide {Self, &Self} × {&'static str, String, Cow<'static, str>} 2×3 trait-idiomatic forward-projection family on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via std::borrow::Cow::Borrowed so every consumer that binds a &Semantic through the standard-library .into() / [From<&Self> for std::borrow::Cow<'static, str>] axis — the exact Semantic::ALL.iter().map(std::borrow::Cow::from).collect() pipe shape a future feira lint --list-styles CLI enumeration whose iterator yields &Semantic by construction, a future .iter().map(|tok| std::borrow::Cow::from(&tok.semantic)).collect() per-token fan-out over &[SemanticToken] in a future caixa-lsp- side per-SemanticTokenType registration walk whose borrowed access off &SemanticToken.semantic avoids a spurious Copy-bound dereference on the semantic-style field, a future caixa.nvim per- highlight-group re-loader whose per-&Semantic kebab identifier is bound through a std::borrow::Cow<'static, str> field so a theme- overlay row can carry either a static kebab or a per-scheme override without duplicating the enum-parameterized field type, a future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission composer over an iterator-yielded &Semantic, or a future axum::response::IntoResponse per-semantic paint audit column over an iterator-yielded &Semantic reaches — resolves to the same 16-arm "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" canonical-lowercase kebab byte-strings the paired std::fmt::Display, AsRef<str>, Semantic::as_str, the four {Self, &Self} × {&'static str, String} 2×2 trait-idiomatic forward-projection corners, and the paired owned-input [From<Semantic> for std::borrow::Cow<'static, str>] impl already return.

Deliberately returns std::borrow::Cow::Borrowed rather than std::borrow::Cow::Owned — the substrate-primitive Semantic::as_str accessor’s return carries the &'static str lifetime by construction (each match arm resolves to an inline &'static str literal), so the zero-alloc borrowed arm is the type-correct projection with no runtime allocation on the borrowed- input surface just as on the paired owned-input surface.

Closes the {Self, &Self} input-shape corner on the fifth outside- caixa-core peer of the substrate-wide std::borrow::Cow<'static, str> forward-projection campaign, opened one commit prior (0253688) on the paired owned-input impl. Rust’s standard library does not carry a blanket impl<T: AsRef<str>> From<&T> for std::borrow::Cow<'static, str> (nor an impl<T: fmt::Display> From<&T> for std::borrow::Cow<'static, str>, nor a Copy-based impl<T: Copy, U: From<T>> From<&T> for U), so every closed-set fieldless typed enum peer on the substrate that carries the paired owned-input std::borrow::Cow<'static, str> axis but not the borrowed-input axis forces every borrowed-input std::borrow::Cow<'static, str>-parameterized call site through a spurious Copy deref (std::borrow::Cow::from(*sem)) or a std::borrow::Cow::Borrowed(sem.as_str()) open-code whose type bounds have no compile-time link to the substrate primitive.

Matches the closure discipline the sibling [caixa_lint::diagnostic::FixSafety] (9a6539f) landed one commit after (79010c5) closing the whole caixa-lint fix-safety-tier 2×3 corner on the fourth outside-caixa-core peer, [caixa_lint::diagnostic::Severity] (1819087) one commit after (700a95e) closing the whole caixa-lint diagnostic-severity 2×3 corner on the third outside-caixa-core peer, [caixa_arch::report::ArchVerdict] (1adb287) one commit after (b492d5f) closing the whole caixa-arch verdict-outcome 2×3 corner on the second outside-caixa-core peer, d7f3039 on the sibling caixa-arch [caixa_arch::invariants::InvariantKind] one commit after (9361e96), f80fbd6 on the render-side [caixa_core::render::PathShapeViolation] one commit after (7342c32), ebeb9e0 on the outside-M3 [caixa_core::CaixaDialeto] one commit after 8322511, 702cdf4 on the two-list dep-graph [caixa_core::dep::DepList] one commit after 6858bac, afdf0f4 on the M3-mesh-shape [caixa_core::aplicacao::PlacementStrategy] one commit after eee504d, 25690ef on [caixa_core::aplicacao::WitShape] one commit after 8634dec, 53346fb on [caixa_core::aplicacao::RateLimitUnit] one commit after 1d59925 (closing the whole M3 mesh-shape tier), d45c409 on the top-level [caixa_core::CaixaKind] one commit after 99c1735, and 9b3e4b3 / ee577fd on the M2 OTP-shape [caixa_core::supervisor::RestartStrategy] / [caixa_core::supervisor::RestartPolicy] sibling peers one commit after 7dd28b3 / 0612398. Closes the whole caixa-theme semantic- style sixteen-arm 2×3 corner ({Self, &Self} × {&'static str, String, Cow<'static, str>}); the remaining outside-caixa-core peer (caixa_provedor::FerriteRuntime) is the only future target left on the axis.

Like the sibling [caixa_lint::diagnostic::FixSafety] and [caixa_lint::diagnostic::Severity] pairs (whose canonical- lowercase byte-strings are round-trip-stable), and unlike the peer [caixa_core::CaixaKind] pair (whose forward emit lands on the lowercase Portuguese diagnostic vocabulary while the reverse parse lands on the PascalCase wire vocabulary, forcing the round-trip through an intermediate [caixa_core::CaixaKind::wire_name] hop), Semantic is a caixa-theme semantic-style axis with no wire/diagnostic vocabulary split — the Semantic::as_str emit and Semantic::from_wire parse share the same sixteen inline canonical-lowercase kebab byte-strings by construction, so the borrowed-input std::borrow::Cow<'static, str> projection this impl exposes composes directly with the paired trait-idiomatic reverse TryFrom<&str> axis on the projection’s std::borrow::Cow::as_ref borrow — no intermediate wire-vocab hop required.

Pinned load-bearing by [tests::semantic_from_borrowed_into_static_cow_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen- arm emit-set through the borrowed-input std::borrow::Cow<'static, str> surface, plus a std::borrow::Cow::Borrowed discriminator witness that the borrowed-input projection lands on the zero-alloc arm rather than silently allocating through std::borrow::Cow::Owned, plus a blanket-derived Into<std::borrow::Cow<'static, str>> shape witness on the borrowed-input surface that also lands on std::borrow::Cow::Borrowed) and [tests::semantic_from_borrowed_into_static_cow_str_agrees_with_paired_axes_on_every_arm] (cross-axis partition pin against the paired owned-input [From<Semantic> for std::borrow::Cow<'static, str>] impl (0253688), the paired borrowed-input [From<&Semantic> for &'static str], and [From<&Semantic> for String] impls plus ToString::to_string-through-std::fmt::Display, plus a .iter().map(std::borrow::Cow::from) pipe witness over Semantic::ALL whose iterator yields &Semantic by construction — so the borrowed-input axis is what routes the pipe without a spurious Copy deref — pinning zero-alloc std::borrow::Cow::Borrowed on every element, plus a direct round-trip witness through TryFrom<&str> on the projection’s std::borrow::Cow::as_ref borrow that closes the two-way &Self → Cow<'static, str> → Self round-trip on the borrowed- input axis).

Source§

fn from(sem: &Semantic) -> Cow<'static, str>

Converts to this type from the input type.
Source§

impl From<&Semantic> for Box<str>

Trait-idiomatic borrowed-input, Box<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via Box::<str>::from on the returned &'static str, so every consumer that binds a let key: Box<str> = (&sem).into();-shaped call site or a Semantic::ALL.iter().map(Box::<str>::from)-shaped pipe (whose iterator over &'static [Semantic] yields &Semantic by construction) — a per-semantic-style census-key materializer that stashes the semantic-style discriminator in a Box<str>-typed heap-owned scalar for cheap clone off a borrowed handle, a future M4 admission-webhook rejection body whose per-arm Box<str> field composes from a borrowed Semantic handle off a &Semantic borrow, a future feira lint --by-semantic histogram-column emitter that iterates Semantic::ALL into per-arm owned Box<str> labels — reaches the same sixteen canonical-lowercase kebab byte- strings the sibling {Self, &Self} × {&'static str, String, Cow<'static, str>} forward-projection corner and the paired owned- input [From<Semantic> for Box<str>] already return.

Rust’s standard library carries impl From<&str> for Box<str> and impl From<String> for Box<str> but no blanket impl<T: AsRef<str>> From<&T> for Box<str> (nor a Copy-based impl<T: Copy, U: From<T>> From<&T> for U), so this borrowed-input axis is a distinct trait-idiomatic surface that the pipe shape Semantic::ALL.iter().map(Box::<str>::from) reaches through this impl and no other — without it, the same pipe would force an explicit .copied() restatement (.iter().copied() .map(Box::<str>::from)) whose type bounds have no compile-time link back to the substrate primitive, and a let key: Box<str> = (&sem).into();-shaped call site would force an explicit Copy deref (Box::<str>::from(*sem)) or a Box::<str>::from(sem.as_str()) open-code with the same defect.

Closes the {Self, &Self} input-shape corner on the fifth outside- caixa-core closed-set fieldless typed enum peer of the substrate- wide trait-idiomatic Box<str> forward-projection campaign, exactly as 5901887 closed the paired first-mover InvariantKind axis one commit after (10613a7) landed, c4319a8 closed the paired second-peer ArchVerdict axis one commit after (3e08f5a) landed, 5116c95 landed the paired third-peer Severity pair one axis prior, cf0174b landed the paired fourth-peer FixSafety pair one axis prior, cb1d068 closed the paired M2-OTP-shape RestartPolicy axis one commit after (0a1b313) landed, and 3c971b2 closed the paired M3- mesh-shape PlacementStrategy axis one commit after (6d73e84) landed. The remaining outside-caixa-core peer ([caixa_provedor::FerriteRuntime]) remains the last future target on this tier of the axis.

Same discipline as the paired [caixa_core::supervisor::RestartStrategy] / [caixa_core::supervisor::RestartPolicy] M2-OTP-shape and [caixa_core::aplicacao::PlacementStrategy] / [caixa_core::aplicacao::WitShape] / [caixa_core::aplicacao::RateLimitUnit] M3-mesh-shape Box<str> {Self, &Self}-closers: forward emit (this impl, the paired owned- input [From<Semantic> for Box<str>] impl, the sibling {&'static str, String, Cow<'static, str>} forward-projection corner, std::fmt::Display, AsRef<str>, Semantic::as_str) and reverse parse (Semantic::from_wire, TryFrom<&str>) route through the same sixteen inline canonical-lowercase kebab byte- strings Semantic::as_str returns by construction, so the round- trip composes directly without the wire-vocab intermediate hop the peer [caixa_core::CaixaKind] axis pair requires.

Pinned load-bearing by [tests::semantic_from_borrowed_into_box_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen- arm Semantic::ALL emit-set on the borrowed-input surface, plus a blanket-derived Into shape witness, plus a .iter().map(Box::<str>::from) pipe witness over Semantic::ALL — whose iterator yields &Semantic by construction, so the borrowed-input Box<str> axis is what routes the pipe through the substrate-primitive Semantic::as_str accessor without a spurious Copy deref).

Source§

fn from(sem: &Semantic) -> Box<str>

Converts to this type from the input type.
Source§

impl From<&Semantic> for Arc<str>

Trait-idiomatic borrowed-input, std::sync::Arc<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic. Closes the {Self, &Self} input- shape corner on the fifth peer of the outside-caixa-core tier of the substrate-wide trait-idiomatic std::sync::Arc<str> forward- projection campaign, one commit after 65dbcff opened its owned-input half on this same enum. Routes byte-for-byte through the substrate- primitive Semantic::as_str pub const fn accessor via std::sync::Arc::<str>::from on the returned &'static str.

Every consumer that holds a &Semantic and needs a std::sync::Arc<str> — a Semantic::ALL.iter().map(std::sync::Arc::<str>::from).collect::<Vec<_>>() per-arm semantic-style census-key materializer (whose iterator over &'static [Semantic] yields &Semantic, not Semantic, so the paired owned-input [From<Semantic> for std::sync::Arc<str>] axis alone forces every call site through an explicit Copy deref or a .copied() restatement rather than the direct trait-idiomatic projection), a future M4 admission-webhook whose per-semantic-style rejection body composes from a borrowed &Semantic handle across an .await boundary through a <T: Into<std::sync::Arc<str>>>-bound diagnostic-column dispatch, a future caixa-lsp-side per-semantic- style materializer holding a shared-ownership per-arm canonical tag from a &Semantic borrow through a per-file lifetime and cloning the shared-ownership label into concurrent tokio-scheduled SemanticTokenType-dispatch tasks through std::sync::Arc::clone rather than a per-task allocation, a future <T: Into<std::sync::Arc<str>>>-bound tracing-span attributes collector recording a borrowed Semantic per-arm field onto the parent span’s shared-ownership context, a future feira lint --by-semantic per-arm histogram-column emitter binding a borrowed Semantic handle into a shared-ownership per-arm bucket key across concurrent per-file lint tasks — reaches the substrate- primitive Semantic::as_str accessor through this impl and no other, without a std::sync::Arc::<str>::from(sem.as_str()) open- code whose type bounds have no compile-time link back to the substrate primitive.

Rust’s standard library carries impl From<&str> for std::sync::Arc<str> and impl From<String> for std::sync::Arc<str> but no blanket impl<T: AsRef<str>> From<&T> for std::sync::Arc<str> (nor a Copy-based impl<T: Copy, U: From<T>> From<&T> for U), so every closed-set fieldless typed enum peer on the substrate that carries the paired owned-input std::sync::Arc<str> axis but not the borrowed-input axis forces every borrowed-input std::sync::Arc<str>-parameterized call site through a spurious Copy deref (std::sync::Arc::<str>::from((*sem).as_str())) or a std::sync::Arc::<str>::from(sem.as_str()) open-code whose type bounds have no compile-time link back to the substrate primitive. The shared-ownership + Sync + Send contract std::sync::Arc<str> provides is the distinct value the sibling Box<str> axis’s owned- move return-shape cannot provide from a borrowed-input axis without a .clone()-per-task materialization.

Mirrors the exact shape 03c043f used to close the first-mover [caixa_arch::invariants::InvariantKind] {Self, &Self} corner one commit after 4e923c1 opened its owned-input half, 92ddfb2 used to close the second-peer [caixa_arch::report::ArchVerdict] {Self, &Self} corner one commit after 1682f8b, 4f041e1 used to close the third-peer caixa_lint::diagnostic::Severity {Self, &Self} corner one commit after a7a9a6d, and 822138e used to close the fourth-peer caixa_lint::diagnostic::FixSafety {Self, &Self} corner one commit after fb73edb. With this commit Semantic becomes the fifth outside- caixa-core peer to carry the closed {Self, &Self} × Arc<str> corner — the remaining outside-caixa-core closed-set fieldless typed enum peer of this campaign ([caixa_provedor::FerriteRuntime]) now has a five-peer {Self, &Self} corner template to converge onto on the outside-caixa-core tier of the Arc axis, hardening the tier’s shape uniformly across five peers ahead of the sixth-and-last close.

Pinned load-bearing by [tests::semantic_from_borrowed_into_arc_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen-arm Semantic::ALL emit-set on the borrowed-input surface, plus a blanket-derived Into shape witness, a cross-axis partition pin against the paired owned-input [From<Semantic> for std::sync::Arc<str>] and the sibling borrowed- input {&'static str, String, Cow<'static, str>, Box<str>} return- shape axes, and a .iter().map(std::sync::Arc::<str>::from) pipe witness over Semantic::ALL — whose iterator yields &Semantic by construction, so the borrowed-input std::sync::Arc<str> axis is what routes the pipe through the substrate-primitive Semantic::as_str accessor without a spurious Copy deref).

Source§

fn from(sem: &Semantic) -> Arc<str>

Converts to this type from the input type.
Source§

impl From<&Semantic> for Rc<str>

Trait-idiomatic borrowed-input, std::rc::Rc<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic — the borrowed-input companion to the paired owned-input [From<Semantic> for std::rc::Rc<str>] impl immediately above, closing the {Self, &Self} input-shape corner of the outside-caixa-core tier of the std::rc::Rc<str> axis on the fifth peer. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via std::rc::Rc::<str>::from on the returned &'static str, so a Semantic::ALL.iter().map(std::rc::Rc::<str>::from)-shaped pipe (whose iterator over &'static [Semantic] yields &Semantic by construction) reaches the same sixteen canonical-lowercase kebab byte-strings the paired owned-input axis and the sibling {Self, &Self} × {&'static str, String, Cow<'static, str>, Box<str>, std::sync::Arc<str>} forward-projection corner already return.

Rust’s standard library carries no blanket impl<T: AsRef<str>> From<&T> for std::rc::Rc<str> (nor a Copy- based impl<T: Copy, U: From<T>> From<&T> for U), so this borrowed- input axis is a distinct trait-idiomatic surface that the pipe shape Semantic::ALL.iter().map(std::rc::Rc::<str>::from) reaches through this impl and no other — without it, the same pipe would force a spurious Copy deref (std::rc::Rc::<str>::from((*sem).as_str())) or a .copied() restatement whose type bounds have no compile-time link back to the substrate primitive.

Closes the {Self, &Self} input-shape corner on the fifth peer of the outside-caixa-core tier of the substrate-wide trait-idiomatic std::rc::Rc<str> forward-projection campaign, matching the trajectory the paired [caixa_core::CaixaKind] (e04aff0), [caixa_core::CaixaDialeto] (c5595e5), [caixa_core::aplicacao::PlacementStrategy] (91b4c92), caixa_arch::invariants::InvariantKind (c71818b), caixa_arch::report::ArchVerdict (cc759ef), caixa_lint::diagnostic::Severity (d7c58b6), caixa_lint::diagnostic::FixSafety (046cc5f), caixa_core::render::PathShapeViolation (31fc43e), and caixa_core::dep::DepList (38f6a3a) pairs walked before it on the caixa-core-internal, M3-mesh-primitive-defining, render-side, and outside-caixa-core tiers of the same axis. Leaves the last outside- caixa-core closed-set fieldless typed enum peer ([caixa_provedor::FerriteRuntime]) with a nine-peer {Self, &Self} corner template to converge onto, closing the outside-caixa-core tier of the std::rc::Rc<str> axis on the next commit.

Pinned load-bearing by [tests::semantic_from_borrowed_into_rc_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen-arm Semantic::ALL emit-set on the borrowed-input surface, plus a blanket-derived Into shape witness, a cross-axis partition pin against the paired owned-input [From<Semantic> for std::rc::Rc<str>] and the sibling borrowed- input {&'static str, String, Cow<'static, str>, Box<str>, std::sync::Arc<str>} return-shape axes, and a .iter().map(std::rc::Rc::<str>::from) pipe witness over Semantic::ALL that resolves through the borrowed-input axis without a spurious Copy deref).

Source§

fn from(sem: &Semantic) -> Rc<str>

Converts to this type from the input type.
Source§

impl From<&Semantic> for Vec<u8>

Trait-idiomatic borrowed-input, owned-Vec<u8> output byte-owned reverse projection on Semantic — the borrowed-input peer of [From<Semantic> for Vec<u8>], closing the {Self, &Self} → Vec<u8> pair on the byte-owned reverse-projection axis in one lift. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor so every consumer that holds a borrowed [&Semantic] and needs an owned Vec<u8> — a future .iter().map(Vec::<u8>::from).collect() pipe over &[Semantic] (whose iterator yields &Semantic, not Semantic, so the owned-input axis alone forces every call site through an explicit .copied() restatement rather than the direct trait-idiomatic projection), a future feira lint --list-styles byte emitter walking Semantic::ALL through an Into<Vec<u8>>-bound per-arm byte-writer to surface the accepted semantic-style tag set — reaches the same sixteen-arm canonical-lowercase kebab byte-string emit-set the paired owned-input peer already returns.

Source§

fn from(semantic: &Semantic) -> Vec<u8>

Converts to this type from the input type.
Source§

impl From<Semantic> for &'static str

Standard-library trait-idiomatic forward projection on the Semantic closed 16-arm caixa-theme semantic-style axis. Routes byte-for-byte through the paired substrate-primitive Semantic::as_str pub const fn accessor so <&'static str>::from(sem) / sem.into::<&'static str>() reaches the same 16-arm canonical-lowercase kebab emit-set the sibling method-named accessor dispatches through and the sibling [std::fmt::Display for Semantic] / [AsRef<str> for Semantic] impls also route through.

Extends the substrate-wide closed-set-enum trait-idiomatic forward-projection family ([caixa_core::supervisor::RestartStrategy] via 523157d, [caixa_core::supervisor::RestartPolicy] via 9fb37d0, [caixa_core::CaixaKind] via edb827b, [caixa_core::CaixaDialeto] via c189a6f, [caixa_core::aplicacao::PlacementStrategy] via afa3562, [caixa_core::aplicacao::WitShape] via 56998ec, [caixa_core::aplicacao::RateLimitUnit] via 7fdfbf4, [caixa_core::render::PathShapeViolation] via 070a6de, [caixa_arch::invariants::InvariantKind] via f2ca7bc, [caixa_arch::report::ArchVerdict] via d4559cb, caixa_lint::diagnostic::Severity via 5cc3b8b, and caixa_lint::diagnostic::FixSafety via 2a56127) onto the first closed-set fieldless typed enum on the caixa-theme surface — the semantic-style 16-arm accept-set every per-Semantic paint dispatch, every future caixa-lsp per-SemanticTokenType wire-up, every future caixa.nvim per-highlight-group re-loader, and every future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission keys off. The thirteenth peer on the substrate surface, closing the caixa-theme closed-set fieldless typed-enum axis onto the trait- idiomatic forward-projection axis and matching the paired trait- idiomatic reverse-projection axis (already closed via bd7da69 on this enum), with only caixa_provedor::FerriteRuntime remaining as the last outside-caixa-core closed-set fieldless typed enum whose trait-idiomatic forward axis is still open.

Pairs with the sibling [TryFrom<&str> for Semantic] impl (bd7da69) to close the two-way Self ↔ &'static str round-trip on the trait-idiomatic axis pair, mirroring the pre-existing method-named Semantic::as_str + Semantic::from_wire pair on the substrate-primitive axis pair.

Return type is &'static str by construction — every Semantic::as_str arm resolves to an inline "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" &'static str literal, so the trait’s return-type promise is upheld structurally without a String::leak cast or a per-arm inline literal outside the paired Semantic::as_str dispatch.

The paired Semantic::as_str accessor’s 16-arm emit-set is the single source of truth — every future arm addition (a Namespace tier between [Self::Symbol] and [Self::KeywordArg] for the M4 tatara-lisp module system’s qualified-name semantic-token dispatch, a Deleted tier for a hard-delete-mark distinct from [Self::Removed] the future 3-way diff surface grows — both trajectory items the sibling Semantic::ALL doc block already names) grows the trait-idiomatic forward axis by construction: one caixa-theme edit on Semantic::as_str extends every one of the sibling forward-projection paths (std::fmt::Display, AsRef<str>, Semantic::as_str itself, and this [From<Self> for &'static str]) without a coordinated rewrite across every future Into<&'static str>-bound consumer’s arm-set.

Pinned load-bearing by [tests::semantic_from_into_static_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the 16-arm emit-set, plus a const-context materialization witness for the &'static str lifetime promise routed through the paired Semantic::as_str pub const fn accessor, plus a paired .into() shape assertion covering the blanket-derived Into<&'static str> shape) and [tests::semantic_from_into_static_str_and_as_str_partition_the_emit_set] (partition pin asserting <&'static str as From<Semantic>>::from and Semantic::as_str agree on every arm, plus a two-way direct round-trip witness through the paired trait-idiomatic TryFrom<&str> axis that closes the two-way Self ↔ &'static str round-trip on the trait-idiomatic axis pair — the emit-side Semantic::as_str and the parse-side Semantic::from_wire dispatch on the same 16 inline canonical- lowercase kebab byte-strings by construction, so round-tripping composes the two trait impls directly).

Source§

fn from(sem: Semantic) -> &'static str

Converts to this type from the input type.
Source§

impl From<Semantic> for String

Trait-idiomatic owned-input, owned-String output forward projection on the Semantic closed 16-arm caixa-theme semantic-style axis — the owned-String companion to the paired [From<Semantic> for &'static str] and [From<&Semantic> for &'static str] siblings immediately above. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via str::to_owned so every consumer that binds a Semantic through the standard-library .into() / [From<Self> for String] axis (a let key: String = sem.into();-shaped downstream call site; a future serde_json::Value::String(sem.into()) structured- payload composer where the Value::String arm typing demands an owned String and the sibling &'static str-returning axes force an explicit .to_owned() / String::from restatement at every call site; a future HashMap::<String, Semantic>::from_iter per-semantic lookup on a future caixa-lsp per-SemanticTokenType registration path where the map’s key type is owned String rather than &'static str; a future [std::borrow::Cow::<'static, str>::Owned(sem.into())] composer on a future feira lint --list-styles operator-facing enumeration verb’s per-arm row where an owned [Cow] arm typing rules; a future caixa.nvim per-highlight-group re-loader that stores the per-Semantic kebab identifier as an owned String on the theme-overlay table; a future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission whose serializer’s Serialize impl on String owns the emit-path) reaches the same 16-arm "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" canonical-lowercase kebab emit-set the paired &'static str-returning axes, the sibling std::fmt::Display, AsRef<str>, and Semantic::as_str surfaces already return — no .to_owned() / String::from(sem.as_str()) detour whose type bounds have no compile-time link to the substrate primitive.

Rust’s standard library does not carry a blanket impl<T: AsRef<str>> From<T> for String (nor an impl<T: fmt::Display> From<T> for String), so every closed-set typed enum that carries the paired AsRef<str> / std::fmt::Display / [From<Self> for &'static str] / [From<&Self> for &'static str] quadruple but not the owned- String axis forces every owned-string call site through the detour above. This lift closes that axis on the sole closed-set fieldless typed enum on the caixa-theme surface (the semantic- style 16-arm axis), extending the substrate-wide {Self, &Self} × {&'static str, String} 2×2-completion campaign onto the sixth outside-caixa-core closed-set fieldless typed enum on the caixa surface — matching the trajectory each of the twelve prior peer enums — [caixa_core::supervisor::RestartStrategy] (7baa18a, first-mover on this axis), [caixa_core::supervisor::RestartPolicy] (7851725), [caixa_core::CaixaKind] (231a18c), [caixa_core::CaixaDialeto] (88942cd), [caixa_core::dep::DepList] (32b0ee8), [caixa_core::aplicacao::PlacementStrategy] (1154c2f), [caixa_core::aplicacao::WitShape] (79a8723), [caixa_core::aplicacao::RateLimitUnit] (c7d687d), [caixa_core::render::PathShapeViolation] (6e0479a, first render- side arm), [caixa_arch::invariants::InvariantKind] (1afd8d5, first outside-caixa-core arm — the paired severity-classification axis on the caixa-arch invariant-kind closed-set enum), [caixa_arch::report::ArchVerdict] (cc80a53, the paired verdict- outcome axis on the sibling caixa-arch closed-set enum), caixa_lint::diagnostic::Severity (4635d4e), caixa_lint::diagnostic::FixSafety (e4d73c6), and caixa_provedor::FerriteRuntime (1e14fde, the paired ferrite- runtime axis on the sole caixa-provedor closed-set enum) — followed on the same 2×2-completion campaign.

Pinned load-bearing by [tests::semantic_from_into_owned_string_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the 16-arm emit-set via the owned-String surface, plus a blanket-derived Into<String> shape witness) and [tests::semantic_from_into_owned_string_and_static_str_agree_on_every_arm] (cross-axis partition pin against the paired owned-input &'static str-returning [From<Semantic> for &'static str] impl and the ToString::to_string-through-std::fmt::Display surface, plus a .iter().copied().map(String::from) pipe witness over Semantic::ALL, plus a direct Self → String → Self round-trip witness through the paired TryFrom<&str> axis on the owned-String’s String::as_str borrow).

Source§

fn from(sem: Semantic) -> String

Converts to this type from the input type.
Source§

impl From<Semantic> for Cow<'static, str>

Trait-idiomatic owned-input forward projection on the sixteen-arm semantic-style Semantic closed-set fieldless typed enum onto the std::borrow::Cow<'static, str> axis — the std::borrow::Cow<'static, str> companion to the paired owned- input [From<Semantic> for &'static str] and paired owned-input [From<Semantic> for String] forward-projection corners already lifted above. Routes through the substrate-primitive Semantic::as_str pub const fn accessor via std::borrow::Cow::Borrowed so every consumer that binds a Semantic through the substrate’s std::borrow::Cow<'static, str> axis (a let key: std::borrow::Cow<'static, str> = sem.into();-shaped downstream call site; a future feira lint --list-styles operator-facing enumeration verb whose per-style row typing binds through a std::borrow::Cow<'static, str> boundary the sibling &'static str-returning and owned-String-returning axes force through a std::borrow::Cow::Borrowed(sem.as_str()) / std::borrow::Cow::Owned(sem.to_string()) / String::from(sem).into() composition; a future caixa-lsp-side per-SemanticTokenType registration walk where the LSP wire schema binds the kebab tag as std::borrow::Cow<'static, str> so static semantic-style strings avoid the runtime allocation the owned-String axis would force; a future caixa.nvim per-highlight-group re-loader whose per-Semantic kebab identifier is bound through a std::borrow::Cow<'static, str> field so a theme-overlay row can carry either a static kebab or a per-scheme override without duplicating the enum-parameterized field type; a future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission whose attribute value binds through a std::borrow::Cow<'static, str> so the emitter can compose static kebab strings with an occasional runtime-computed variant; a future HashMap::<std::borrow::Cow<'static, str>, usize>::from_iter(Semantic::ALL.iter().copied().map(|sem| (sem.into(), 0))) per-Semantic-paint histogram seed on a future per-file paint audit where the key type is std::borrow::Cow<'static, str> rather than &'static str or owned String) reaches the same 16-arm "keyword" / "symbol" / "keyword-arg" / "string" / "number" / "literal" / "comment" / "accent" / "muted" / "error" / "warning" / "info" / "hint" / "added" / "removed" / "unchanged" canonical-lowercase kebab emit-set the paired std::fmt::Display, AsRef<str>, Semantic::as_str, and the four {Self, &Self} × {&'static str, String} 2×2 trait- idiomatic forward-projection corners already return.

Deliberately returns std::borrow::Cow::Borrowed rather than std::borrow::Cow::Owned — the substrate-primitive Semantic::as_str accessor’s return carries the &'static str lifetime by construction (each match arm resolves to an inline &'static str literal), so the zero-alloc borrowed arm is the type-correct projection with no runtime allocation. Any future silent detour that routes the impl through the std::borrow::Cow::Owned arm (an accidental std::borrow::Cow::Owned(sem.to_string()) rewrite that would allocate on every call site where the &'static str return of Semantic::as_str makes the zero-alloc borrowed projection type-correct) trips at caixa-theme test time under the std::borrow::Cow::Borrowed discriminator witness rather than at a downstream std::borrow::Cow<'static, str>-bound consumer’s silent allocation.

Fifth outside-caixa-core peer (and sole peer on the caixa- theme surface) on the substrate-wide trait-idiomatic std::borrow::Cow<'static, str> forward-projection family — extends the outside-caixa-core tier of the campaign off the paired caixa-lint fix-safety-tier axis on the sibling two-arm closed-set enum ([caixa_lint::diagnostic::FixSafety], 79010c5 / 9a6539f — fourth outside-caixa-core peer, closed the 2×3 corner) onto the semantic-style sixteen-arm axis every per- Semantic paint dispatch, every future caixa-lsp per-SemanticTokenType wire-up, every future caixa.nvim per-highlight-group re-loader, and every future blackmatter-shell per-arm data-semantic="<kebab>" DOM emission dispatches through. Fourteenth peer on the axis; leaves the remaining outside-caixa-core peer (caixa_provedor::FerriteRuntime) as the future target. The paired {Self, &Self} borrowed-input closer on &Semantic is the next commit on this axis, matching the closure discipline every prior peer landed one commit after its opener.

Rust’s standard library does not carry a blanket impl<T: AsRef<str>> From<T> for std::borrow::Cow<'static, str> (nor an impl<T: fmt::Display> From<T> for std::borrow::Cow<'static, str>), so every closed-set fieldless typed enum peer on the substrate that carries the paired AsRef<str> / std::fmt::Display / [From<Self> for &'static str] / [From<&Self> for &'static str] / [From<Self> for String] / [From<&Self> for String] sextet but not the std::borrow::Cow<'static, str> axis forces every std::borrow::Cow<'static, str>-parameterized call site through a std::borrow::Cow::Borrowed(sem.as_str()) / std::borrow::Cow::Owned(sem.to_string()) / String::from(sem).into() detour whose type bounds have no compile-time link to the substrate primitive.

The Semantic::as_str emit and Semantic::from_wire parse share the same 16 inline canonical-lowercase kebab byte-strings by construction — so the std::borrow::Cow<'static, str> projection this impl exposes composes directly with the paired trait-idiomatic reverse TryFrom<&str> axis on the projection’s std::borrow::Cow::as_ref borrow, no intermediate wire-vocab hop required (matching the sibling [caixa_lint::diagnostic::FixSafety] and [caixa_lint::diagnostic::Severity] pairs — round-trip-stable — unlike the peer [caixa_core::CaixaKind] pair whose forward emit and reverse parse land on distinct vocabularies).

Pinned load-bearing by [tests::semantic_from_into_static_cow_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen- arm emit-set through the std::borrow::Cow<'static, str> surface, plus a std::borrow::Cow::Borrowed discriminator witness that the projection lands on the zero-alloc arm rather than silently allocating through std::borrow::Cow::Owned, plus a blanket-derived Into<std::borrow::Cow<'static, str>> shape witness that also lands on std::borrow::Cow::Borrowed) and [tests::semantic_from_into_static_cow_str_agrees_with_paired_axes_on_every_arm] (cross-axis partition pin against the paired owned-input [From<Semantic> for &'static str] and [From<Semantic> for String] forward-projection corners plus the sibling ToString::to_string-through-std::fmt::Display surface, plus a .iter().copied().map(std::borrow::Cow::from) pipe witness over Semantic::ALL with zero-alloc std::borrow::Cow::Borrowed discriminator on every element, plus a direct round-trip witness through TryFrom<&str> on the projection’s std::borrow::Cow::as_ref borrow).

Source§

fn from(sem: Semantic) -> Cow<'static, str>

Converts to this type from the input type.
Source§

impl From<Semantic> for Box<str>

Trait-idiomatic owned-input, Box<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic. Routes byte-for-byte through the substrate- primitive Semantic::as_str pub const fn accessor via Box::<str>::from on the returned &'static str, so every consumer that binds a let key: Box<str> = sem.into();-shaped call site — a per-semantic-style census-key materializer that stashes the semantic-style discriminator in a Box<str>-typed heap-owned scalar for cheap clone (a future per-semantic-style token-coloring legend the LSP-side rich-diagnostics surface keys off), a future M4 admission-webhook rejection body whose per-arm Box<str> field composes from an owned Semantic handle naming the accepted semantic-style tier list, a future feira lint --by-semantic histogram-column emitter that stashes each arm as an owned Box<str> label — reaches the same sixteen canonical-lowercase kebab byte-strings the sibling {Self, &Self} × {&'static str, String, Cow<'static, str>} forward- projection corner already returns.

Rust’s standard library carries impl From<&str> for Box<str> and impl From<String> for Box<str> but no blanket impl<T: AsRef<str>> From<T> for Box<str>, so this axis is a distinct trait-idiomatic surface that a downstream Semantic → Box<str> .into() reaches through this impl and no other — without a Box::from(sem.as_str()) open-code whose type bounds have no compile-time link back to the substrate primitive.

Extends the outside-caixa-core tier of the substrate-wide trait- idiomatic Box<str> forward-projection campaign onto the fifth peer — the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum — following the first-mover [caixa_arch::invariants::InvariantKind] pair (10613a7 owned + 5901887 borrowed) that opened the tier, the second-peer [caixa_arch::report::ArchVerdict] pair (3e08f5a owned + c4319a8 borrowed), the third-peer [Severity] pair (5116c95), and the fourth-peer [FixSafety] pair (cf0174b) that landed one axis prior. Same discipline as the paired [caixa_core::supervisor::RestartStrategy] / [caixa_core::supervisor::RestartPolicy] M2-OTP-shape and [caixa_core::aplicacao::PlacementStrategy] / [caixa_core::aplicacao::WitShape] / [caixa_core::aplicacao::RateLimitUnit] M3-mesh-shape Box<str> axes: forward emit (this impl, the sibling {&'static str, String, Cow<'static, str>} forward-projection corner, std::fmt::Display, AsRef<str>, Semantic::as_str) and reverse parse (Semantic::from_wire, TryFrom<&str>) route through the same sixteen inline canonical-lowercase kebab byte- strings Semantic::as_str returns by construction, so the round- trip composes directly without the wire-vocab intermediate hop the peer [caixa_core::CaixaKind] axis pair requires.

Leaves the remaining outside-caixa-core peer ([caixa_provedor::FerriteRuntime]) whose Box<str> axis closure remains the last future target on this tier of the campaign, and leaves the paired borrowed-input [From<&Semantic> for Box<str>] {Self, &Self}-closer as the direct next target on this axis.

Pinned load-bearing by [tests::semantic_from_into_box_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen- arm Semantic::ALL emit-set on the owned-input surface, plus a blanket-derived Into shape witness).

Source§

fn from(sem: Semantic) -> Box<str>

Converts to this type from the input type.
Source§

impl From<Semantic> for Arc<str>

Trait-idiomatic owned-input, std::sync::Arc<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic. Opens the fifth peer of the outside-caixa-core tier of the substrate-wide trait-idiomatic std::sync::Arc<str> forward-projection campaign, following the first-mover [caixa_arch::invariants::InvariantKind] pair (4e923c1 owned + 03c043f borrowed), the second-peer [caixa_arch::report::ArchVerdict] pair (1682f8b owned + 92ddfb2 borrowed), the third-peer caixa_lint::diagnostic::Severity pair (a7a9a6d owned + 4f041e1 borrowed), and the fourth-peer caixa_lint::diagnostic::FixSafety pair (fb73edb owned + 822138e borrowed) that landed the tier one axis prior. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via std::sync::Arc::<str>::from on the returned &'static str.

Every consumer that binds a let key: std::sync::Arc<str> = sem.into();-shaped call site — a future M4 admission-webhook rejection body whose per-semantic-style std::sync::Arc<str> field composes off an owned Semantic handle across an .await boundary through a <T: Into<std::sync::Arc<str>>>-bound diagnostic-column dispatch, a future caixa-lsp-side per-semantic-style materializer stashing the semantic-style discriminator in a std::sync::Arc<str>-typed shared-ownership scalar cloned across concurrent tokio-scheduled SemanticTokenType-dispatch tasks through std::sync::Arc::clone rather than a per-task allocation, a future <T: Into<std::sync::Arc<str>>>-bound tracing-span attributes collector recording an owned Semantic per-arm field onto the parent span’s shared-ownership context, a future feira lint --by-semantic per-arm histogram-column emitter binding an owned Semantic handle into a shared-ownership per-arm bucket key across concurrent per-file lint tasks — reaches the substrate- primitive Semantic::as_str accessor through this impl and no other, without a std::sync::Arc::<str>::from(sem.as_str()) open- code whose type bounds have no compile-time link back to the substrate primitive.

Rust’s standard library carries impl From<&str> for std::sync::Arc<str> and impl From<String> for std::sync::Arc<str> but no blanket impl<T: AsRef<str>> From<T> for std::sync::Arc<str> (nor an impl<T: fmt::Display> From<T> for std::sync::Arc<str>), so this axis is a distinct trait-idiomatic surface — a two-step std::sync::Arc::<str>::from(String::from(sem)) composition through the owned-String axis allocates twice (once into the intermediate String, once into the std::sync::Arc<str> on the From<String> conversion) where the single-step trait impl allocates once. The shared-ownership + Sync + Send contract std::sync::Arc<str> provides is the distinct value the sibling Box<str> axis’s owned-move return-shape cannot provide without a .clone()-per-task materialization.

Leaves the remaining outside-caixa-core peer ([caixa_provedor::FerriteRuntime]) as the last future target on this tier of the campaign, and leaves the paired borrowed-input [From<&Semantic> for std::sync::Arc<str>] {Self, &Self}-closer as the direct next target on this same enum, mirroring the shape 03c043f used to close the first-mover [caixa_arch::invariants::InvariantKind] pair one commit after 4e923c1 opened its owned-input half, 92ddfb2 used to close the second-peer [caixa_arch::report::ArchVerdict] pair one commit after 1682f8b, 4f041e1 used to close the third-peer caixa_lint::diagnostic::Severity pair one commit after a7a9a6d, and 822138e used to close the fourth-peer caixa_lint::diagnostic::FixSafety pair one commit after fb73edb.

Same discipline as the paired [From<Semantic> for Box<str>] axis on this same enum already opened the outside-caixa-core Box<str> tier’s fifth peer: forward emit (this impl, the paired sibling {&'static str, String, Cow<'static, str>, Box<str>} forward- projection corner, std::fmt::Display, AsRef<str>, Semantic::as_str) and reverse parse (Semantic::from_wire, TryFrom<&str>) route through the same sixteen inline canonical- lowercase kebab byte-strings Semantic::as_str returns by construction, so the round-trip composes directly without the wire- vocab intermediate hop the peer [caixa_core::CaixaKind] axis pair requires.

Pinned load-bearing by [tests::semantic_from_into_arc_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen-arm Semantic::ALL emit-set on the owned-input surface, plus a blanket-derived Into shape witness and cross-axis byte-parity pins against the sibling owned-input {&'static str, String, Cow<'static, str>, Box<str>} return-shape axes).

Source§

fn from(sem: Semantic) -> Arc<str>

Converts to this type from the input type.
Source§

impl From<Semantic> for Rc<str>

Trait-idiomatic owned-input, std::rc::Rc<str> output forward projection on the caixa-theme semantic-style sixteen-arm closed-set fieldless typed enum Semantic — the single-threaded reference- counted peer of the paired owned-input [From<Semantic> for std::sync::Arc<str>] impl immediately above on the sibling atomically-reference-counted std::sync::Arc<str> axis. Routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via std::rc::Rc::<str>::from on the returned &'static str.

Rust’s standard library carries impl From<&str> for std::rc::Rc<str> and impl From<String> for std::rc::Rc<str> but no blanket impl<T: AsRef<str>> From<T> for std::rc::Rc<str> (nor a From<&T> blanket), and the std::sync::Arc<str> and std::rc::Rc<str> trait tables are disjoint, so this axis is a distinct trait-idiomatic surface a let key: std::rc::Rc<str> = sem.into();-shaped call site reaches through this impl and no other. A single-threaded caixa-theme per-Semantic style-token renderer whose per-arm canonical-lowercase kebab tag is cloned across intra-render tree nodes via std::rc::Rc::clone (its cheaper non-atomic refcount bump the std::sync::Arc<str> axis’s atomically-reference-counted return- shape cannot provide within a single-threaded theme-overlay pass), a future feira lint --by-semantic single-threaded per-arm histogram- column emitter keyed on a shared-ownership per-arm bucket key, a future caixa-lsp-side per-Semantic SemanticTokenType panel composer holding a shared per-arm canonical tag across intra-file theme tree nodes without atomic contention — reaches the substrate- primitive Semantic::as_str accessor through this impl and no other.

Extends the outside-caixa-core tier of the trait-idiomatic std::rc::Rc<str> forward-projection axis onto its fifth peer, following the first-mover caixa_arch::invariants::InvariantKind pair (c71818b {Self, &Self} corner) that opened the tier, second- peer caixa_arch::report::ArchVerdict pair (cc759ef), third-peer crate::style::Semantic’s caixa-lint sibling Severity pair (d7c58b6), and fourth-peer caixa_lint::diagnostic::FixSafety pair (046cc5f) — after the axis opened on the structurally most fundamental caixa-core-internal [caixa_core::CaixaKind] pair (e04aff0), widened onto the second caixa-core-internal peer [caixa_core::CaixaDialeto] (c5595e5), extended onto the first M3- mesh-primitive-defining slot enum [caixa_core::aplicacao::PlacementStrategy] (91b4c92), and further widened onto the render-side PathShapeViolation (31fc43e) and the caixa-core-internal two-list dep-graph DepList (38f6a3a). Matches the trajectory the sibling atomically-reference-counted std::sync::Arc<str> axis walked before it onto this same enum (the paired impl From<Semantic> for std::sync::Arc<str> / impl From<&Semantic> for std::sync::Arc<str> pair immediately above).

Pinned load-bearing by [tests::semantic_from_into_rc_str_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen-arm Semantic::ALL emit-set on the owned-input surface, plus a blanket-derived Into shape witness and cross-axis byte-parity pins against the sibling owned-input {&'static str, String, Cow<'static, str>, Box<str>, std::sync::Arc<str>} return-shape axes).

Source§

fn from(sem: Semantic) -> Rc<str>

Converts to this type from the input type.
Source§

impl From<Semantic> for Vec<u8>

Trait-idiomatic owned-input, owned-Vec<u8> output byte-owned reverse projection on the Semantic closed-set caixa-theme semantic-style typed enum — routes byte-for-byte through the substrate-primitive Semantic::as_str pub const fn accessor via str::as_bytes + slice::to_vec so every consumer that binds a Semantic through the standard-library <T: Into<Vec<u8>>> trait bound (a future std::io::Write::write_all-shape per-theme audit-log byte-sink whose input parameter is an owned Vec<u8> payload, a future bytes::Bytes::from(Vec::<u8>::from(semantic)) composer folding the per-arm byte-tag into the [bytes::Bytes] framing surface, a future hasher.update(&Vec::<u8>::from(semantic))-shape BLAKE3 per-theme content-address closure that needs the owned byte-tail buffered before folding into the [caixa_lacre::Lacre] closure body) reaches the same sixteen-arm canonical-lowercase kebab byte-string emit-set the paired [AsRef<[u8]>] borrowed byte-view axis (2c58220) and the six str-owned reverse-projection corners already return, rather than an open-coded per-call-site semantic.as_str().as_bytes().to_vec() composition whose type bounds have no compile-time link back to the substrate primitive.

Extends the substrate-wide trait-idiomatic byte-owned reverse-projection axis onto the fifth outside-caixa-core closed-set fieldless typed-enum peer — matching the trajectory the caixa-core-internal [caixa_core::CaixaKind] first-mover (b245fd6), [caixa_core::CaixaDialeto] (4cceaf5), [caixa_core::dep::DepList] (e974ca2), the M2-OTP-shape [caixa_core::supervisor::RestartStrategy] (63e5dd0) / [caixa_core::supervisor::RestartPolicy] (96a522a), the M3-mesh-primitive-defining [caixa_core::aplicacao::PlacementStrategy] (008a35b) / [caixa_core::aplicacao::RateLimitUnit] (602ae0b) / [caixa_core::aplicacao::WitShape] (7b4b278), the outside-caixa-core first-mover caixa_arch::invariants::InvariantKind (ed29f5a), the second-mover caixa_arch::report::ArchVerdict (5268ed1), the third-mover caixa_lint::Severity (3aa6644), the fourth-mover caixa_lint::FixSafety (38060a4), and the render-side [caixa_core::render::PathShapeViolation] (c98fb87) peers walked before it. Leaves the last outside-caixa-core closed-set fieldless typed-enum peer ([caixa_provedor::FerriteRuntime]) as the campaign’s next mechanical one-lift extension against the substrate-primitive as_str accessor it already carries — tracking the paired byte-view axis’s outside-caixa-core sweep verbatim.

Pinned load-bearing by [tests::semantic_from_into_owned_vec_bytes_routes_through_as_str_accessor] (byte-parity pin against Semantic::as_str across the sixteen-arm Semantic::ALL emit-set binding the byte-owned reverse-projection axis against the paired [AsRef<[u8]>] borrowed byte-view axis and the str-owned reverse-projection family’s .into_bytes() / .as_bytes().to_vec() byte-tails, plus a <T: Into<Vec<u8>>>-bound generic-consumer witness on both owned and borrowed input shapes).

Source§

fn from(semantic: Semantic) -> Vec<u8>

Converts to this type from the input type.
Source§

impl FromStr for Semantic

Standard-library trait-idiomatic std::str::FromStr impl on the Semantic closed-set caixa-theme semantic-style typed enum — routes byte-for-byte through the paired [TryFrom<&str> for Semantic] impl (which in turn routes through the substrate-primitive Semantic::from_wire Option<Self> accessor), so "...".parse::<Semantic>() / <Semantic as FromStr>::from_str(…) reaches the same 16-arm canonical-lowercase-kebab accept-set the sibling method-named Semantic::from_wire resolver and the paired TryFrom<&str> impl already resolve against.

Extends the substrate-wide trait-idiomatic str::parse-axis campaign — opened on [caixa_core::dep::DepList] via 6167092 as first-mover on the two-list dep-graph closed-set typed enum, then extended onto [caixa_core::CaixaKind] (9867432), [caixa_core::aplicacao::PlacementStrategy] (62ef49a), [caixa_core::CaixaDialeto] (ff01b2f), [caixa_arch::invariants::InvariantKind] (fb16072), [caixa_arch::report::ArchVerdict] (40e9dfd), caixa_lint::diagnostic::Severity (6b0a08c), caixa_lint::diagnostic::FixSafety (eb6942b), and [caixa_core::render::PathShapeViolation] (b0b578c) — onto the first closed-set fieldless typed enum on the caixa-theme surface: the 16-arm semantic-style accept-set every per-Semantic paint dispatch, every future caixa-lsp-side per-SemanticTokenType wire-up, every future caixa.nvim per-highlight-group re-loader, and every future blackmatter-shell per-arm data-semantic="<kebab>" DOM-attribute emission dispatches through. Coherent by construction on this enum specifically: Semantic carries exactly one canonical-lowercase-kebab wire axis with no paired secondary parse surface, so — unlike the peer [caixa_core::supervisor::RestartStrategy] / [caixa_core::supervisor::RestartPolicy] (whose paired gen_platform::FromStrKind-derived kebab-case FromStr on the dispatcher-catalog axis rules a second FromStr impl out by coherence) and unlike the peer [caixa_core::aplicacao::WitShape] / [caixa_core::aplicacao::RateLimitUnit] (whose two-axis splits motivate deliberate deferral of the FromStr axis so a plain s.parse::<T>() cannot obscure which axis the caller reaches), lifting [FromStr] onto Semantic cannot collide with a second parse axis it does not carry.

[FromStr] is the canonical Rust-idiomatic parse-set entry point every stdlib-shaped consumer reaches for — str::parse::<T>() is a T: FromStr-bounded generic, not a T: for<'a> TryFrom<&'a str>-bounded one — so lifting [FromStr] onto the closed-set enum unlocks the .parse::<Semantic>() short-form on every consumer (a future feira lint --list-styles=<semantic> clap-style arg-parse composes arg.parse::<Semantic>(); a serde string-tagged deserializer with a #[serde(with = "serde_with::DisplayFromStr")] shim routes through the same FromStr bound; a future caixa-lsp-side per-SemanticTokenType startup registration walk that reads a declaration-order kebab list from configuration reaches the typed enum through line.parse::<Semantic>() without a per-consumer TryFrom<&str> restatement; a caixa.nvim-side per-highlight-group re-loader binding a prior emission’s Semantic::as_str output back to the typed enum for cross-run palette-histogram diff reaches the same axis through the stdlib .parse() short-form; a future blackmatter-shell data-semantic="<kebab>" DOM-attribute round-trip that walks element.dataset.semantic.parse::<Semantic>() on the client-side paint dispatch reaches the same axis through the stdlib short-form).

The impl trivially delegates to the paired TryFrom<&str> — same type Err = () deliberate-deferral shape the sibling reverse-projection trait carries — so both trait-idiomatic parse-axis paths (TryFrom<&str> and FromStr::from_str) resolve to the same 16-arm accept-set by construction. A future arm addition (a Deprecated decoration between Self::Removed and Self::Unchanged the future formatter-preview grows to mark soft-delete regions distinct from hard-delete Self::Removed the future 3-way diff surface grows — the trajectory item the sibling Semantic::ALL doc block already names) reaches every parse path through one caixa-theme edit on the substrate-primitive Semantic::from_wire accessor, not a coordinated rewrite across the two reverse-projection trait impls.

Pinned load-bearing by [tests::semantic_from_str_routes_through_try_from_str_impl] (byte-parity pin across the 16-arm accept-set + delegated .parse()-projection witness) and [tests::semantic_from_str_rejects_unknown_byte_strings] (rejection witness against silent accept-set widening).

Source§

type Err = ()

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for Semantic

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Semantic

Source§

fn eq(&self, other: &Semantic) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for Semantic

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for Semantic

Source§

impl TryFrom<&[u8]> for Semantic

Trait-idiomatic borrowed byte-slice reverse projection on the Semantic closed-set caixa-theme semantic-style typed enum — routes byte-for-byte through std::str::from_utf8 + the substrate-primitive Semantic::from_wire Option<Self> accessor, so <Semantic as TryFrom<&[u8]>>::try_from(bytes) reaches the same sixteen-arm canonical-lowercase-kebab wire-form accept-set the sibling method-named Semantic::from_wire resolver and the paired TryFrom<&str> impl already resolve against. Both rejection paths (invalid UTF-8 and valid-UTF-8-but- unknown-wire) collapse onto the single unit-error Err(()) return, matching the trait-idiomatic-()-error shape the substrate-wide sibling TryFrom<&[u8]> impls carry.

Extends the substrate-wide trait-idiomatic byte-view reverse- projection axis onto the fifth outside-caixa-core closed-set fieldless typed-enum peer (and the first inside caixa-theme): the sixteen-arm caixa-theme semantic-style accept-set every per-Semantic paint dispatch, every future caixa-lsp-side per-SemanticTokenType wire-up, every future caixa.nvim per- highlight-group re-loader, and every future blackmatter-shell per-arm data-semantic="<kebab>" DOM-attribute re-loader dispatches through — matching the trajectory the first-mover outside-caixa-core [caixa_arch::invariants::InvariantKind] TryFrom<&[u8]> impl (40b7417), second-mover outside-caixa-core [caixa_arch::report::ArchVerdict] TryFrom<&[u8]> impl (4dbca85), third-mover outside-caixa-core caixa_lint::diagnostic::Severity TryFrom<&[u8]> impl (f11dc96), and fourth-mover outside-caixa-core caixa_lint::diagnostic::FixSafety TryFrom<&[u8]> impl (46a3e3e) walked before it. Leaves the last outside-caixa-core closed-set fieldless typed-enum peer ([caixa_provedor::FerriteRuntime]) as the campaign’s next mechanical one-lift extension — tracking the paired byte-owned axis’s outside-caixa-core sweep verbatim.

Pinned load-bearing by [tests::semantic_try_from_bytes_routes_through_from_wire_accessor] (byte-parity pin against Semantic::from_wire across the sixteen-arm Semantic::ALL accept-set on the borrowed byte- slice surface, plus a cross-axis witness that the byte-view reverse projection agrees with the paired TryFrom<&str> str- view reverse axis on every accepted arm, and a forward/reverse byte-view cross-axis witness that feeding the paired [AsRef<[u8]>] byte-tail and the paired [From<Semantic> for Vec<u8>] and [From<&Semantic> for Vec<u8>] owned byte-tails back through the new impl round-trips to the originating arm) and [tests::semantic_try_from_bytes_rejects_unknown_and_non_utf8_bytes] (rejection witness against silent accept-set widening on both the non-UTF-8 byte-sequence rejection path and the unknown-wire- vocabulary rejection path — the latter mirrors the corpus the paired TryFrom<&str> rejection witness already pins, including the trajectory-item candidates b"namespace" / b"deleted" the sibling Semantic::ALL doc block already names and sibling closed-set canonical tags on other axes so a byte-level cross- axis leak trips at caixa-theme test time rather than at a downstream consumer’s silent misclassification).

Source§

type Error = ()

The type returned in the event of a conversion error.
Source§

fn try_from(bytes: &[u8]) -> Result<Self, <Self as TryFrom<&[u8]>>::Error>

Performs the conversion.
Source§

impl TryFrom<&str> for Semantic

Trait-idiomatic reverse projection on the Semantic closed 16-arm caixa-theme semantic-style axis — routes byte-for-byte through the paired substrate-primitive Semantic::from_wire Option<Self> accessor so every future consumer that binds a canonical semantic tag through the standard-library .try_into() / TryFrom axis (a future feira lint --semantic=<kebab> CLI arg-parse that composes into let sem: Semantic = s.try_into()?, a future caixa-lsp per-token re-parse hydrating a prior Semantic::as_str output back to the typed enum for SemanticTokenType dispatch, a future caixa.nvim per-highlight- group re-loader binding a stored kebab byte-string back through the typed enum, a generic <T: TryFrom<&str>>-bound theme-overlay re-loader over any of the substrate’s closed-set typed enums) reaches the same 16-arm accept-set the sibling Semantic::from_wire resolver parses through and the sibling Semantic::as_str emits, rather than an open-coded per-arm match s { "keyword" => …, "symbol" => …, … _ => … } cascade whose arm-set has no compile-time link back to the substrate primitive.

Complements the pre-existing forward-projection triple (std::fmt::Display, AsRef<str>, Semantic::as_str) with the paired trait-idiomatic reverse-projection axis: Rust-side newtype/typed-enum convention pairs AsRef<str> with either std::str::FromStr or TryFrom<&str> on the same primitive so a caller who can project out to a &str can also project in from one. The TryFrom<&str> axis is deliberately chosen over std::str::FromStr to sidestep the clippy::should_implement_trait lint the sibling method-named Semantic::from_wire would trigger under a FromStr impl (the same design tradeoff the peer [caixa_core::CaixaKind] (3c83606), [caixa_core::CaixaDialeto] (bf33136), [caixa_core::aplicacao::PlacementStrategy] (6fd00cd), [caixa_core::supervisor::RestartStrategy] (5b828ed), [caixa_core::supervisor::RestartPolicy] (6fdd0d9), [caixa_core::aplicacao::WitShape] (5472902), [caixa_core::aplicacao::RateLimitUnit] (bf78400), [caixa_core::render::PathShapeViolation] (e67e48a), caixa_arch::invariants::InvariantKind (e21a857), caixa_arch::report::ArchVerdict (0a4cc45), caixa_lint::diagnostic::Severity (a7bf74c), and caixa_lint::diagnostic::FixSafety (df86c94) blocks note) — this impl closes the trait-idiomatic reverse axis without disturbing the method-named from_wire shape every peer closed-set typed enum already carries.

type Error = () matches the sibling Semantic::from_wire’s Option<Self> return-shape’s deliberate deferral of error typing: the caller picks the diagnostic form appropriate for its use site (a future feira lint --semantic CLI arg-parse composes its own per-verb “unknown semantic-style tag: — accepted: {…}” message enumerating Semantic::ALL, a future admission-webhook rejection body wraps the Err(()) outcome with the accepted-set enumeration for operator diagnostics, a Result::map_err at the call site lifts the axis-error to a per-verb error type). Same shape the peer sibling reverse-projection axes carry. The return- shape uses fully-qualified <Self as TryFrom<&str>>::Error because the associated-type name would otherwise collide with the Self::Error variant on the same primitive (the identical ambiguous-associated-item defect the sibling impl TryFrom<&str> for Severity (a7bf74c) already threads around under #[deny(future_incompatible)]).

The paired TryFrom<&str> impl reaches the same 16-arm accept- set the Semantic::from_wire resolver dispatches through, so any future arm addition (a Namespace tier between Self::Symbol and Self::KeywordArg for the M4 tatara-lisp module system’s qualified-name semantic-token dispatch, a Deleted tier for a hard-delete-mark distinct from Self::Removed the future 3-way diff surface grows — both trajectory items the sibling Semantic::ALL doc block already names) grows the trait- idiomatic axis by construction: one caixa-theme edit on Semantic::from_wire extends both the method-named reverse projection every existing consumer keys off and the trait- idiomatic reverse projection this impl exposes, without a coordinated rewrite across every future TryFrom<&str>-bound consumer’s arm-set.

Extends the substrate-wide closed-set-enum trait-idiomatic reverse-projection family ([caixa_core::CaixaKind] via 3c83606, [caixa_core::CaixaDialeto] via bf33136, [caixa_core::aplicacao::PlacementStrategy] via 6fd00cd, [caixa_core::supervisor::RestartStrategy] via 5b828ed, [caixa_core::supervisor::RestartPolicy] via 6fdd0d9, [caixa_core::aplicacao::WitShape] via 5472902, [caixa_core::aplicacao::RateLimitUnit] via bf78400, [caixa_core::render::PathShapeViolation] via e67e48a, caixa_arch::invariants::InvariantKind via e21a857, caixa_arch::report::ArchVerdict via 0a4cc45, caixa_lint::diagnostic::Severity via a7bf74c, and caixa_lint::diagnostic::FixSafety via df86c94) onto the first closed-set fieldless typed enum on the caixa-theme surface — the semantic-style 16-arm accept-set every per-Semantic paint dispatch, every future caixa-lsp per-SemanticTokenType wire-up, and every future caixa.nvim per-highlight-group re-loader keys off. The thirteenth peer on the substrate surface, and the first inside caixa-theme; with caixa_provedor::FerriteRuntime remaining as the only outside-caixa-core closed-set fieldless typed enum whose trait-idiomatic axis is still open.

Pinned load-bearing by [tests::semantic_try_from_str_routes_through_from_wire_accessor] (byte-parity pin against Semantic::from_wire across the 16-arm accept-set) and [tests::semantic_try_from_str_rejects_unknown_byte_strings] (rejection witness against silent accept-set widening).

Source§

type Error = ()

The type returned in the event of a conversion error.
Source§

fn try_from(s: &str) -> Result<Self, <Self as TryFrom<&str>>::Error>

Performs the conversion.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.