Put default implementations of FuncWriter methods in a seperate method

This is useful when you want to write extra information
This commit is contained in:
bjorn3
2018-12-26 11:35:55 +01:00
committed by Dan Gohman
parent 4f8753fa11
commit e3db942b0c

View File

@@ -41,6 +41,16 @@ pub trait FuncWriter {
w: &mut Write, w: &mut Write,
func: &Function, func: &Function,
regs: Option<&RegInfo>, regs: Option<&RegInfo>,
) -> Result<bool, fmt::Error> {
self.super_preamble(w, func, regs)
}
/// Default impl of `write_preamble`
fn super_preamble(
&mut self,
w: &mut Write,
func: &Function,
regs: Option<&RegInfo>,
) -> Result<bool, fmt::Error> { ) -> Result<bool, fmt::Error> {
let mut any = false; let mut any = false;
@@ -91,13 +101,24 @@ pub trait FuncWriter {
} }
/// Write an entity definition defined in the preamble to `w`. /// Write an entity definition defined in the preamble to `w`.
#[allow(unused_variables)]
fn write_entity_definition( fn write_entity_definition(
&mut self, &mut self,
w: &mut Write, w: &mut Write,
func: &Function, func: &Function,
entity: AnyEntity, entity: AnyEntity,
value: &fmt::Display, value: &fmt::Display,
) -> fmt::Result {
self.super_entity_definition(w, func, entity, value)
}
/// Default impl of `write_entity_definition`
#[allow(unused_variables)]
fn super_entity_definition(
&mut self,
w: &mut Write,
func: &Function,
entity: AnyEntity,
value: &fmt::Display,
) -> fmt::Result { ) -> fmt::Result {
writeln!(w, " {} = {}", entity, value) writeln!(w, " {} = {}", entity, value)
} }