pub trait RustFunctionGenerator {
fn push_str(&mut self, s: &str);
fn tmp(&mut self) -> usize;
fn rust_gen(&self) -> &dyn RustGenerator;
fn lift_lower(&self) -> LiftLower;
fn let_results(&mut self, amt: usize, results: &mut Vec<String>) { ... }
fn record_lower(
&mut self,
iface: &Interface,
id: TypeId,
record: &Record,
operand: &str,
results: &mut Vec<String>
) { ... }
fn record_lift(
&mut self,
iface: &Interface,
id: TypeId,
ty: &Record,
operands: &[String],
results: &mut Vec<String>
) { ... }
fn tuple_lower(
&mut self,
tuple: &Tuple,
operand: &str,
results: &mut Vec<String>
) { ... }
fn tuple_lift(&mut self, operands: &[String], results: &mut Vec<String>) { ... }
fn typename_lower(&self, iface: &Interface, id: TypeId) -> String { ... }
fn typename_lift(&self, iface: &Interface, id: TypeId) -> String { ... }
}
Required Methods
source
fn rust_gen(&self) -> &dyn RustGenerator
source
fn lift_lower(&self) -> LiftLower
Provided Methods
source
fn let_results(&mut self, amt: usize, results: &mut Vec<String>)
sourcefn record_lower(
fn record_lower(
&mut self,
iface: &Interface,
id: TypeId,
record: &Record,
operand: &str,
results: &mut Vec<String>
)
sourcefn record_lift(
fn record_lift(
&mut self,
iface: &Interface,
id: TypeId,
ty: &Record,
operands: &[String],
results: &mut Vec<String>
)
source
fn tuple_lower(&mut self, tuple: &Tuple, operand: &str, results: &mut Vec<String>)
source
fn tuple_lift(&mut self, operands: &[String], results: &mut Vec<String>)
source
fn typename_lower(&self, iface: &Interface, id: TypeId) -> String
source