pub struct TerminalWarning {
pub kind: TerminalWarningKind,
pub sequence: Option<String>,
pub reason: String,
}Expand description
One recoverable terminal warning with optional source sequence.
sequence == None means no source text was retained; Some("") is a
present but empty sequence. Strings are stored verbatim.
§Examples
use ailloli_ui_terminal_core::{TerminalWarning, TerminalWarningKind};
let warning = TerminalWarning::new(TerminalWarningKind::InvalidUtf8, None, "invalid input");
assert_eq!(warning.sequence, None);Fields§
§kind: TerminalWarningKindMachine-readable warning category.
sequence: Option<String>Optional offending escape/control sequence.
reason: StringHuman-readable reason; may be empty.
Implementations§
Source§impl TerminalWarning
impl TerminalWarning
Sourcepub fn new(
kind: TerminalWarningKind,
sequence: Option<String>,
reason: impl Into<String>,
) -> Self
pub fn new( kind: TerminalWarningKind, sequence: Option<String>, reason: impl Into<String>, ) -> Self
Creates a warning, preserving optional sequence and reason verbatim.
§Examples
use ailloli_ui_terminal_core::{TerminalWarning, TerminalWarningKind};
let warning = TerminalWarning::new(TerminalWarningKind::SizeClamped, Some("0x0".into()), "clamped");
assert_eq!(warning.kind, TerminalWarningKind::SizeClamped);Sourcepub fn blocked_sequence(
sequence: impl Into<String>,
reason: impl Into<String>,
) -> Self
pub fn blocked_sequence( sequence: impl Into<String>, reason: impl Into<String>, ) -> Self
Creates a TerminalWarningKind::BlockedSequence warning.
The supplied sequence is always stored as Some, even when empty.
§Examples
use ailloli_ui_terminal_core::{TerminalWarning, TerminalWarningKind};
let warning = TerminalWarning::blocked_sequence("OSC 52", "clipboard denied");
assert_eq!(warning.kind, TerminalWarningKind::BlockedSequence);Sourcepub fn unsupported_sequence(sequence: impl Into<String>) -> Self
pub fn unsupported_sequence(sequence: impl Into<String>) -> Self
Creates an unsupported-sequence warning with a generated reason.
§Examples
use ailloli_ui_terminal_core::TerminalWarning;
let warning = TerminalWarning::unsupported_sequence("CSI ? 9999 h");
assert!(warning.reason.contains("CSI ? 9999 h"));Trait Implementations§
Source§impl Clone for TerminalWarning
impl Clone for TerminalWarning
Source§fn clone(&self) -> TerminalWarning
fn clone(&self) -> TerminalWarning
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TerminalWarning
impl Debug for TerminalWarning
Source§impl<'de> Deserialize<'de> for TerminalWarning
impl<'de> Deserialize<'de> for TerminalWarning
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for TerminalWarning
impl PartialEq for TerminalWarning
Source§impl Serialize for TerminalWarning
impl Serialize for TerminalWarning
impl Eq for TerminalWarning
impl StructuralPartialEq for TerminalWarning
Auto Trait Implementations§
impl Freeze for TerminalWarning
impl RefUnwindSafe for TerminalWarning
impl Send for TerminalWarning
impl Sync for TerminalWarning
impl Unpin for TerminalWarning
impl UnwindSafe for TerminalWarning
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
Mutably borrows from an owned value. Read more