Vendor dependencies

Let's see how I like this workflow.
This commit is contained in:
John Doty 2022-12-19 08:27:18 -08:00
parent 34d1830413
commit 9c435dc440
7500 changed files with 1665121 additions and 99 deletions

View file

@ -0,0 +1,31 @@
use codespan_reporting::diagnostic::Diagnostic;
use codespan_reporting::files::Files;
use codespan_reporting::term::{emit, Config};
use termcolor::{Buffer, WriteColor};
mod color_buffer;
use self::color_buffer::ColorBuffer;
pub struct TestData<'files, F: Files<'files>> {
pub files: F,
pub diagnostics: Vec<Diagnostic<F::FileId>>,
}
impl<'files, F: Files<'files>> TestData<'files, F> {
fn emit<W: WriteColor>(&'files self, mut writer: W, config: &Config) -> W {
for diagnostic in &self.diagnostics {
emit(&mut writer, config, &self.files, &diagnostic).unwrap();
}
writer
}
pub fn emit_color(&'files self, config: &Config) -> String {
self.emit(ColorBuffer::new(), &config).into_string()
}
pub fn emit_no_color(&'files self, config: &Config) -> String {
let buffer = self.emit(Buffer::no_color(), &config);
String::from_utf8_lossy(buffer.as_slice()).into_owned()
}
}