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
impl Semantic
pub const fn is_keyword(&self) -> bool
pub const fn is_symbol(&self) -> bool
pub const fn is_keyword_arg(&self) -> bool
pub const fn is_string(&self) -> bool
pub const fn is_number(&self) -> bool
pub const fn is_literal(&self) -> bool
pub const fn is_comment(&self) -> bool
pub const fn is_accent(&self) -> bool
pub const fn is_muted(&self) -> bool
pub const fn is_error(&self) -> bool
pub const fn is_warning(&self) -> bool
pub const fn is_info(&self) -> bool
pub const fn is_hint(&self) -> bool
pub const fn is_added(&self) -> bool
pub const fn is_removed(&self) -> bool
pub const fn is_unchanged(&self) -> bool
Source§impl Semantic
impl Semantic
Sourcepub const ALL: &'static [Self]
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.
Sourcepub const fn as_str(self) -> &'static str
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.
Trait Implementations§
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.
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.
impl Copy for Semantic
Source§impl<'de> Deserialize<'de> for Semantic
impl<'de> Deserialize<'de> for Semantic
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
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.
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.
impl Eq for Semantic
impl StructuralPartialEq for Semantic
Auto Trait Implementations§
impl Freeze for Semantic
impl RefUnwindSafe for Semantic
impl Send for Semantic
impl Sync for Semantic
impl Unpin for Semantic
impl UnsafeUnpin for Semantic
impl UnwindSafe for Semantic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.