pub fn source<R>(r: R) -> Result<Source> where
    R: Read