pub struct AnsiUtils;Expand description
ANSI control character utilities
Implementations§
Source§impl AnsiUtils
impl AnsiUtils
Sourcepub fn strip_ansi(text: &str) -> String
pub fn strip_ansi(text: &str) -> String
Strip ANSI escape sequences from text
Removes color codes, cursor movement, and other ANSI escape sequences while preserving the actual text content.
§Examples
use command_stream::ansi::AnsiUtils;
let text = "\x1b[31mRed text\x1b[0m";
assert_eq!(AnsiUtils::strip_ansi(text), "Red text");Sourcepub fn strip_control_chars(text: &str) -> String
pub fn strip_control_chars(text: &str) -> String
Strip control characters from text, preserving newlines, carriage returns, and tabs
Removes control characters (ASCII 0x00-0x1F and 0x7F) except:
- Newlines (\n = 0x0A)
- Carriage returns (\r = 0x0D)
- Tabs (\t = 0x09)
§Examples
use command_stream::ansi::AnsiUtils;
let text = "Hello\x00World\nNew line\tTab";
assert_eq!(AnsiUtils::strip_control_chars(text), "HelloWorld\nNew line\tTab");Sourcepub fn strip_all(text: &str) -> String
pub fn strip_all(text: &str) -> String
Strip both ANSI sequences and control characters
Combines strip_ansi and strip_control_chars for complete text cleaning.
Sourcepub fn clean_for_processing(data: &str) -> String
pub fn clean_for_processing(data: &str) -> String
Clean data for processing (strips ANSI and control chars)
Alias for strip_all - provides semantic clarity when processing
data that needs to be cleaned for further processing.
Auto Trait Implementations§
impl Freeze for AnsiUtils
impl RefUnwindSafe for AnsiUtils
impl Send for AnsiUtils
impl Sync for AnsiUtils
impl Unpin for AnsiUtils
impl UnsafeUnpin for AnsiUtils
impl UnwindSafe for AnsiUtils
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more