pub trait LabelManager {
// Required methods
fn add_label(&mut self, name: String, address: CodeAddress);
fn get_label_address(&self, name: &str) -> Option<CodeAddress>;
fn get_label_start_address(&self, label_name: &str) -> Option<CodeAddress>;
fn get_label_end_address(&self, label_name: &str) -> Option<CodeAddress>;
fn push_current_label(&mut self, name: String);
fn pop_current_label(&mut self);
fn get_current_labels(&self) -> &[String];
}