pub trait IntStream {
// Required methods
fn consume(&mut self);
fn la(&mut self, offset: isize) -> i32;
fn index(&self) -> usize;
fn seek(&mut self, index: usize);
fn size(&self) -> usize;
// Provided methods
fn mark(&mut self) -> isize { ... }
fn release(&mut self, _marker: isize) { ... }
fn source_name(&self) -> &str { ... }
}