1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
mod bind; pub use self::bind::{SymBinding,SymbolBinding}; mod symtype; pub use self::symtype::{SymType,SymbolType}; mod symprot; pub use self::symprot::{SymProt,SymbolProtection}; mod symtable32; pub use self::symtable32::{parse_symtable32}; mod symtable64; pub use self::symtable64::{parse_symtable64}; mod traits; pub use self::traits::{SymEntry}; mod symtable; pub use self::symtable::{parse_symtable}; use std::borrow::Cow; pub fn find_null<'a>(buffer: &'a [u8]) -> Option<Cow<'a,str>> { let mut term = 0usize; let len = buffer.len(); for i in 0..len { if buffer[i] == 0 { break; } else { term += 1; continue; } } let temp = &buffer[0..term]; Some(String::from_utf8_lossy(temp)) }