2021-08-28 14:40:14 +00:00
|
|
|
//! Provides UCS2 string types for usage in AVM1 and AVM2.
|
|
|
|
//!
|
|
|
|
//! Internally, these types are represeted by a sequence of 1-byte or 2-bytes (wide) code units,
|
|
|
|
//! that may contains null bytes or unpaired surrogates.
|
|
|
|
//!
|
|
|
|
//! To match Flash behavior, the string length is limited to 2³¹-1 code units;
|
|
|
|
//! any attempt to create a longer string will panic.
|
|
|
|
|
|
|
|
#[macro_use]
|
|
|
|
mod common;
|
|
|
|
|
2021-09-12 10:20:51 +00:00
|
|
|
mod avm;
|
2021-09-01 12:50:34 +00:00
|
|
|
mod buf;
|
2021-08-28 14:40:14 +00:00
|
|
|
mod ops;
|
|
|
|
mod raw;
|
|
|
|
mod slice;
|
2021-08-23 11:11:50 +00:00
|
|
|
mod tables;
|
|
|
|
pub mod utils;
|
2021-09-12 10:20:51 +00:00
|
|
|
|
2021-08-28 14:40:14 +00:00
|
|
|
/// The maximum string length, equals to 2³¹-1.
|
|
|
|
pub const MAX_STRING_LEN: usize = raw::MAX_STRING_LEN;
|
|
|
|
|
2021-09-12 10:20:51 +00:00
|
|
|
pub use avm::AvmString;
|
2021-09-01 12:50:34 +00:00
|
|
|
pub use buf::WString;
|
2021-08-28 14:40:14 +00:00
|
|
|
pub use common::{BorrowWStr, BorrowWStrMut, Units};
|
2021-09-15 09:59:43 +00:00
|
|
|
pub use ops::{Iter, Split};
|
2021-08-28 14:40:14 +00:00
|
|
|
pub use slice::{WStr, WStrMut};
|
|
|
|
|
|
|
|
use common::panic_on_invalid_length;
|