Trait rustc::middle::trans::cleanup::CleanupHelperMethods[src]

trait CleanupHelperMethods<'a> {
    fn top_ast_scope(&self) -> Option<NodeId>;
    fn top_nonempty_cleanup_scope(&self) -> Option<uint>;
    fn is_valid_to_pop_custom_scope(&self, custom_scope: CustomScopeIndex) -> bool;
    fn is_valid_custom_scope(&self, custom_scope: CustomScopeIndex) -> bool;
    fn trans_scope_cleanups(&self, bcx: &'a Block<'a>, scope: &CleanupScope<'a>) -> &'a Block<'a>;
    fn trans_cleanups_to_exit_scope(&'a self, label: EarlyExitLabel) -> BasicBlockRef;
    fn get_or_create_landing_pad(&'a self) -> BasicBlockRef;
    fn scopes_len(&self) -> uint;
    fn push_scope(&self, scope: CleanupScope<'a>);
    fn pop_scope(&self) -> CleanupScope<'a>;
    fn top_scope<R>(&self, f: |&CleanupScope<'a>| -> R) -> R;
}

Required Methods

fn top_ast_scope(&self) -> Option<NodeId>

fn top_nonempty_cleanup_scope(&self) -> Option<uint>

fn is_valid_to_pop_custom_scope(&self, custom_scope: CustomScopeIndex) -> bool

fn is_valid_custom_scope(&self, custom_scope: CustomScopeIndex) -> bool

fn trans_scope_cleanups(&self, bcx: &'a Block<'a>, scope: &CleanupScope<'a>) -> &'a Block<'a>

fn trans_cleanups_to_exit_scope(&'a self, label: EarlyExitLabel) -> BasicBlockRef

fn get_or_create_landing_pad(&'a self) -> BasicBlockRef

fn scopes_len(&self) -> uint

fn push_scope(&self, scope: CleanupScope<'a>)

fn pop_scope(&self) -> CleanupScope<'a>

fn top_scope<R>(&self, f: |&CleanupScope<'a>| -> R) -> R

Implementors