pubusestd::io::Result;usestream::*;/// A universal code lets us encode arbitrary sized integers in a
/// self-delimiting code.
pubtraitUniversalCode{/// Writes `value` to `sink`.
fnencode<W: BitWrite>(&self, sink:&mut W, value:u64)->Result<()>;/// Reads a value from `source`.
////// `Ok(None)` indicates (benign) EOF.
fndecode<R: BitRead>(&self, source:&mut R)->Result<Option<u64>>;// TODO: bigint support
}