pub trait Termination {
    // Required method
    fn report(self) -> i32;
}
Expand description

A trait for implementing arbitrary return types in the main function.

The c-main function only supports to return integers as return type. So, every type implementing the Termination trait has to be converted to an integer.

The default implementations are returning 0 to indicate a successful execution. In case of a failure, 1 is returned.

Required Methods§

source

fn report(self) -> i32

Is called to get the representation of the value as status code. This status code is returned to the operating system.

Implementations on Foreign Types§

source§

impl Termination for i32

source§

fn report(self) -> i32

source§

impl Termination for !

source§

fn report(self) -> i32

source§

impl Termination for ()

source§

fn report(self) -> i32

source§

impl<E: Debug> Termination for Result<!, E>

source§

fn report(self) -> i32

source§

impl<E: Debug> Termination for Result<(), E>

source§

fn report(self) -> i32

Implementors§