pub enum Mode {
Numeric,
Alphanumeric,
Byte,
Kanji,
}Expand description
The mode indicator, which specifies the character set of the encoded data.
Variants§
Numeric
The data contains only characters 0 to 9.
Alphanumeric
The data contains only uppercase letters (A–Z), numbers (0–9) and a few
punctuations marks (space, $, %, *, +, -, ., /, :).
Byte
The data contains arbitrary binary data.
Kanji
The data contains Shift-JIS-encoded double-byte text.
Implementations§
Source§impl Mode
impl Mode
Sourcepub fn length_bits_count(self, version: Version) -> usize
pub fn length_bits_count(self, version: Version) -> usize
Computes the number of bits needed to encode the data length.
use qrcode_rs::types::{Version, Mode};
assert_eq!(Mode::Numeric.length_bits_count(Version::Normal(1)), 10);This method will return Err(QrError::UnsupportedCharacterSet) if the
mode is not supported in the given version.
Sourcepub fn data_bits_count(self, raw_data_len: usize) -> usize
pub fn data_bits_count(self, raw_data_len: usize) -> usize
Computes the number of bits needed to some data of a given raw length.
use qrcode_rs::types::Mode;
assert_eq!(Mode::Numeric.data_bits_count(7), 24);Note that in Kanji mode, the raw_data_len is the number of Kanjis,
i.e. half the total size of bytes.
Trait Implementations§
impl Copy for Mode
impl Eq for Mode
Source§impl FromStr for Mode
impl FromStr for Mode
Source§fn from_str(s: &str) -> Result<Self, Self::Err>
fn from_str(s: &str) -> Result<Self, Self::Err>
Parses a mode by name, case-insensitively: numeric, alphanumeric,
byte or kanji.
§Examples
use std::str::FromStr;
use qrcode_rs::types::Mode;
assert_eq!(Mode::from_str("Byte"), Ok(Mode::Byte));
assert!(Mode::from_str("utf8").is_err());Source§type Err = EnumParseError
type Err = EnumParseError
Source§impl PartialOrd for Mode
impl PartialOrd for Mode
Source§fn partial_cmp(&self, other: &Self) -> Option<Ordering>
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
Defines a partial ordering between modes. If a <= b, then b contains
a superset of all characters supported by a.