pub trait NumToStr<T> {
// Required methods
fn to_bytes_base(self, base: T, string: &mut [u8]) -> &[u8] ⓘ;
fn to_str_base(self, base: T, buf: &mut [u8]) -> &str ⓘ;
}
Available on crate feature
fmt
only.Expand description
Required Methods§
Sourcefn to_bytes_base(self, base: T, string: &mut [u8]) -> &[u8] ⓘ
fn to_bytes_base(self, base: T, string: &mut [u8]) -> &[u8] ⓘ
Given a base for encoding and a mutable byte slice, write the number into the byte slice and return the indice where the inner string begins. The inner string can be extracted by slicing the byte slice from that indice.
§Panics
If the supplied buffer is smaller than the number of bytes needed to write the integer, this will panic. On debug builds, this function will perform a check on base 10 conversions to ensure that the input array is large enough to hold the largest possible value in digits.
§Example
use devela::NumToStr;
use std::io::{self, Write};
let stdout = io::stdout();
let stdout = &mut io::stdout();
// Allocate a buffer that will be reused in each iteration.
let mut buffer = [0u8; 20];
let number = 15325;
let _ = stdout.write(number.to_bytes_base(10, &mut buffer));
let number = 1241;
let _ = stdout.write(number.to_bytes_base(10, &mut buffer));
assert_eq!(12345.to_bytes_base(10, &mut buffer), b"12345");
Sourcefn to_str_base(self, base: T, buf: &mut [u8]) -> &str ⓘ
fn to_str_base(self, base: T, buf: &mut [u8]) -> &str ⓘ
Convenience method for quickly getting a string from the input’s array buffer.