# tracing::field::AsField - Rust
API documentation for the Rust `AsField` trait in crate `tracing`.
Keywords: rust, rustlang, rust-lang, AsField

# Trait tracing::field::AsField [−] [src]

    pub trait AsField: Sealed {
        fn as_field(&self, metadata: &Metadata<'_>) -> Option<Field>;
    }

Trait implemented to allow a type to be used as a field key.

ⓘNote

    Note: Although this is implemented for both the
    Field type and any
    type that can be borrowed as an &str, only Field
    allows O(1) access.
    Indexing a field with a string results in an iterative search that performs
    string comparisons. Thus, if possible, once the key for a field is known, it
    should be used whenever possible.

## Required methods

### `fn as_field(&self, metadata: &Metadata<'_>) -> Option<Field>` [src]

Attempts to convert `&self` into a `Field` with the specified `metadata`.

If `metadata` defines this field, then the field is returned. Otherwise, this returns `None`.

Loading content...

## Implementations on Foreign Types

### `impl AsField for str` [src]

#### `fn as_field(&self, metadata: &Metadata<'_>) -> Option<Field>` [src]

Loading content...

## Implementors

### `impl AsField for Field` [src]

#### `fn as_field(&self, metadata: &Metadata<'_>) -> Option<Field>` [src]

### `impl<'a> AsField for &'a Field` [src]

#### `fn as_field(&self, metadata: &Metadata<'_>) -> Option<Field>` [src]

Loading content...