fn read_version(input: &mut &[u8]) -> Version {
    let (bytes, rest) = input.split_at(3);
    *input = rest;
    Version {
        major: bytes[0],
        minor: bytes[1],
        patch: bytes[2],
    }
}
/// Splits the first three bytes off a slice and interprets them as (major, minor, patch).
Splits the first three bytes off a slice and interprets them as (major, minor, patch).
Splits the first three bytes off a slice and interprets them as ( major minor patch ) .
fn read_version(input: &mut &[u8]) -> Version {
    let (bytes, rest) = input.split_at(3);
    *input = rest;
    Version {
        major: bytes[0],
        minor: bytes[1],
        patch: bytes[2],
    }
}
fn read_version ( input : & mut & [ u8 ] ) -> Version { let ( bytes , rest ) = input . split_at ( 3 ) ; * input = rest ; Version { major : bytes [ 0 ] , minor : bytes [ 1 ] , patch : bytes [ 2 ] , } }
Splits the first three bytes off a slice and interprets them as (major, minor, patch).
Splits the first three bytes off a slice and interprets them as ( major minor patch ) .
input
&mut &[u8]
input
&mut &[u8]