Struct semantic_analyzer::codegen::CodegenStack
source · pub struct CodegenStack(_);
Implementations§
Trait Implementations§
source§impl Clone for CodegenStack
impl Clone for CodegenStack
source§fn clone(&self) -> CodegenStack
fn clone(&self) -> CodegenStack
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Codegen for CodegenStack
impl Codegen for CodegenStack
fn function_declaration(&mut self, fn_decl: &FunctionStatement)
fn constant(&mut self, const_decl: &Constant)
fn types(&mut self, type_decl: &StructTypes)
fn function_statement(&mut self, fn_decl: &FunctionStatement)
fn let_binding(&mut self, let_decl: &Value, expr_result: &ExpressionResult)
fn binding(&mut self, val: &Value, expr_result: &ExpressionResult)
fn call( &mut self, call: &Function, params: Vec<ExpressionResult>, register_number: u64 )
fn expression_value(&mut self, expression: &Value, register_number: u64)
fn expression_struct_value( &mut self, expression: &Value, index: u64, register_number: u64 )
fn expression_const(&mut self, expression: &Constant, register_number: u64)
fn expression_operation( &mut self, operation: &ExpressionOperations, left_value: &ExpressionResult, right_value: &ExpressionResult, register_number: u64 )
fn expression_function_return(&mut self, expr_result: &ExpressionResult)
fn jump_function_return(&mut self, expr_result: &ExpressionResult)
fn set_label(&mut self, label: &LabelName)
fn expression_function_return_with_label( &mut self, expr_result: &ExpressionResult )
fn condition_expression( &mut self, left_result: &ExpressionResult, right_result: &ExpressionResult, condition: &Condition, register_number: u64 )
fn logic_condition( &mut self, left_condition_register: u64, right_condition_register: u64, logic_condition: &LogicCondition, register_number: u64 )
fn if_condition_expression( &mut self, expr_result: &ExpressionResult, label_if_begin: &LabelName, label_if_end: &LabelName )
fn if_condition_logic( &mut self, label_if_begin: &LabelName, label_if_end: &LabelName, register_number: u64 )
fn jump_to(&mut self, label: &LabelName)
source§impl Debug for CodegenStack
impl Debug for CodegenStack
source§impl Default for CodegenStack
impl Default for CodegenStack
source§fn default() -> CodegenStack
fn default() -> CodegenStack
Returns the “default value” for a type. Read more
source§impl PartialEq<CodegenStack> for CodegenStack
impl PartialEq<CodegenStack> for CodegenStack
source§fn eq(&self, other: &CodegenStack) -> bool
fn eq(&self, other: &CodegenStack) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for CodegenStack
Auto Trait Implementations§
impl RefUnwindSafe for CodegenStack
impl Send for CodegenStack
impl Sync for CodegenStack
impl Unpin for CodegenStack
impl UnwindSafe for CodegenStack
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more