use anyhow::Result;
use clap::{Parser, ValueEnum};
use encoding_rs::Encoding;
-use pspp::cooked::decode;
+use pspp::cooked::{decode, encoding_from_headers};
use pspp::raw::{Reader, Record, Magic};
use std::fs::File;
use std::io::BufReader;
}
Mode::Cooked => {
let headers: Vec<Record> = reader.collect::<Result<Vec<_>, _>>()?;
- let headers = decode(headers, encoding, &|e| eprintln!("{e}"))?;
+ let encoding = encoding_from_headers(&headers, &|e| eprintln!("{e}"))?;
+ let (headers, _) = decode(headers, encoding, &|e| eprintln!("{e}"))?;
for header in headers {
println!("{header:?}");
}