pub(crate) fn save_in<F>(
    sess: &Session,
    path_buf: PathBuf,
    name: &str,
    encode: F
)where
    F: FnOnce(FileEncoder) -> FileEncodeResult,