pub trait Backend: Sized {
// Required methods
fn read<T: IndexRange>(&self, range: T) -> Result<&[u8]>;
fn len(&self) -> usize;
// Provided methods
fn is_empty(&self) -> bool { ... }
fn locate_start_offset(&self) -> Result<usize> { ... }
fn locate_xref_offset(&self) -> Result<usize> { ... }
fn read_xref_table_and_trailer(
&self,
start_offset: usize,
resolve: &impl Resolve,
) -> Result<(XRefTable, Dictionary)> { ... }
}Required Methods§
Provided Methods§
fn is_empty(&self) -> bool
Sourcefn locate_start_offset(&self) -> Result<usize>
fn locate_start_offset(&self) -> Result<usize>
Returns the offset of the beginning of the file, i.e., where the %PDF-1.5 header is.
(currently only used internally!)
Sourcefn locate_xref_offset(&self) -> Result<usize>
fn locate_xref_offset(&self) -> Result<usize>
Returns the value of startxref (currently only used internally!)
Sourcefn read_xref_table_and_trailer(
&self,
start_offset: usize,
resolve: &impl Resolve,
) -> Result<(XRefTable, Dictionary)>
fn read_xref_table_and_trailer( &self, start_offset: usize, resolve: &impl Resolve, ) -> Result<(XRefTable, Dictionary)>
Used internally by File, but could also be useful for applications that want to look at the raw PDF objects.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.