Provide a default empty implementation for the LLVMCallbacks trait.

This commit is contained in:
Nick Lewycky
2019-12-06 12:09:34 -08:00
parent 27fe50ce9e
commit a221f1e570
2 changed files with 3 additions and 7 deletions

View File

@ -33,10 +33,6 @@ impl LLVMCallbacks for RecordPreOptIR {
fn preopt_ir_callback(&mut self, module: &InkwellModule) {
self.preopt_ir = module.print_to_string().to_string();
}
fn postopt_ir_callback(&mut self, _: &InkwellModule) {}
fn obj_memory_buffer_callback(&mut self, _: &InkwellMemoryBuffer) {}
}
#[test]

View File

@ -37,9 +37,9 @@ pub type InkwellModule<'ctx> = inkwell::module::Module<'ctx>;
pub type InkwellMemoryBuffer = inkwell::memory_buffer::MemoryBuffer;
pub trait LLVMCallbacks: std::any::Any + 'static {
fn preopt_ir_callback(&mut self, module: &InkwellModule);
fn postopt_ir_callback(&mut self, module: &InkwellModule);
fn obj_memory_buffer_callback(&mut self, memory_buffer: &InkwellMemoryBuffer);
fn preopt_ir_callback(&mut self, _module: &InkwellModule) {}
fn postopt_ir_callback(&mut self, _module: &InkwellModule) {}
fn obj_memory_buffer_callback(&mut self, _memory_buffer: &InkwellMemoryBuffer) {}
}
pub struct LLVMBackendConfig {