Enum cretonne_codegen::ir::ExternalName[][src]

pub enum ExternalName {
    User {
        namespace: u32,
        index: u32,
    },
    TestCase {
        length: u8,
        ascii: [u8; 16],
    },
    LibCall(LibCall),
}

The name of an external is either a reference to a user-defined symbol table, or a short sequence of ascii bytes so that test cases do not have to keep track of a sy mbol table.

External names are primarily used as keys by code using Cretonne to map from a cretonne_codegen::ir::FuncRef or similar to additional associated data.

External names can also serve as a primitive testing and debugging tool. In particular, many .cton test files use function names to identify functions.

Variants

A name in a user-defined symbol table. Cretonne does not interpret these numbers in any way.

Fields of User

Arbitrary.

Arbitrary.

A test case function name of up to 10 ascii characters. This is not intended to be used outside test cases.

Fields of TestCase

How many of the bytes in ascii are valid?

Ascii bytes of the name.

A well-known runtime library function.

Methods

impl ExternalName
[src]

Creates a new external name from a sequence of bytes. Caller is expected to guarantee bytes are only ascii alphanumeric or _.

Examples

// Create `ExternalName` from a string.
let name = ExternalName::testcase("hello");
assert_eq!(name.to_string(), "%hello");

Create a new external name from user-provided integer indicies.

Examples

// Create `ExternalName` from integer indicies
let name = ExternalName::user(123, 456);
assert_eq!(name.to_string(), "u123:456");

Trait Implementations

impl Debug for ExternalName
[src]

Formats the value using the given formatter. Read more

impl Clone for ExternalName
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for ExternalName
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Eq for ExternalName
[src]

impl Default for ExternalName
[src]

Returns the "default value" for a type. Read more

impl Display for ExternalName
[src]

Formats the value using the given formatter. Read more

impl FromStr for ExternalName
[src]

The associated error which can be returned from parsing.

Parses a string s to return a value of this type. Read more

Auto Trait Implementations