pub struct LSB_MSB<T> { /* private fields */ }Implementations§
Source§impl<T: Copy> LSB_MSB<T>
impl<T: Copy> LSB_MSB<T>
Sourcepub fn get(&self) -> T
pub fn get(&self) -> T
Examples found in repository?
examples/dump.rs (line 48)
23fn main() {
24 // Get last argument in command line
25
26 let mut args = std::env::args();
27
28 if args.len() < 2 {
29 println!("Usage: {} <filename>", args.next().unwrap());
30 std::process::exit(1);
31 }
32
33 let filename = args.nth(args.len() - 1).unwrap();
34
35 let file = File::open(filename).unwrap();
36 let mut iso = match ISO9660::from_device(FileDevice(file)) {
37 Some(iso) => iso,
38 None => {
39 eprintln!("It's not an ISO9660 (*.iso) file!");
40 std::process::exit(1);
41 },
42 };
43
44 fn dump(reader: &mut ISO9660, lba: u32, level: usize) {
45 let data = reader.read_directory(lba as _);
46
47 for i in data.collect::<Vec<_>>() {
48 let size = i.record.data_length.get();
49
50 println!("{:<offset$}[{}] {} - {} bytes", "", if i.is_file() { "FILE" } else { "DIR" }, i.name, size, offset = level * 4);
51
52 if ![".", ".."].contains(&i.name.as_str()) && i.is_folder() {
53 dump(reader, i.record.lba.get(), level + 1);
54 }
55 }
56 }
57
58 let root_lba = iso.root().lba.get();
59 dump(&mut iso, root_lba, 0);
60}Trait Implementations§
Source§impl<T> FromBytes for LSB_MSB<T>where
T: FromBytes,
impl<T> FromBytes for LSB_MSB<T>where
T: FromBytes,
Source§impl<T> IntoBytes for LSB_MSB<T>where
T: IntoBytes,
impl<T> IntoBytes for LSB_MSB<T>where
T: IntoBytes,
Source§fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
Gets the bytes of this value mutably. Read more
Source§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
Source§impl<T> TryFromBytes for LSB_MSB<T>where
T: TryFromBytes,
impl<T> TryFromBytes for LSB_MSB<T>where
T: TryFromBytes,
Source§fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
impl<T: Copy> Copy for LSB_MSB<T>
impl<T> Immutable for LSB_MSB<T>where
T: Immutable,
Auto Trait Implementations§
impl<T> Freeze for LSB_MSB<T>where
T: Freeze,
impl<T> RefUnwindSafe for LSB_MSB<T>where
T: RefUnwindSafe,
impl<T> Send for LSB_MSB<T>where
T: Send,
impl<T> Sync for LSB_MSB<T>where
T: Sync,
impl<T> Unpin for LSB_MSB<T>where
T: Unpin,
impl<T> UnwindSafe for LSB_MSB<T>where
T: UnwindSafe,
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