pub struct StringPool {
pub strings: Vec<String>,
pub locations: BTreeMap<ExprId, usize>,
pub text_to_idx: BTreeMap<String, usize>,
}Fields§
§strings: Vec<String>First-appearance order; index equals data-segment index.
locations: BTreeMap<ExprId, usize>§text_to_idx: BTreeMap<String, usize>For sites without an ExprId (e.g. switch case-label strings).
Implementations§
Source§impl StringPool
impl StringPool
pub fn lookup_text(&self, text: &str) -> Option<usize>
pub fn is_empty(&self) -> bool
Sourcepub fn code_units(&self, idx: usize) -> Result<u32, CompilerFailure>
pub fn code_units(&self, idx: usize) -> Result<u32, CompilerFailure>
UTF-16 code unit count for the literal at idx (= JS .length).
pub fn utf16_le_bytes(&self, idx: usize) -> Result<Vec<u8>, CompilerFailure>
Trait Implementations§
Source§impl Clone for StringPool
impl Clone for StringPool
Source§impl Debug for StringPool
impl Debug for StringPool
Auto Trait Implementations§
impl Freeze for StringPool
impl RefUnwindSafe for StringPool
impl Send for StringPool
impl Sync for StringPool
impl Unpin for StringPool
impl UnsafeUnpin for StringPool
impl UnwindSafe for StringPool
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