Struct rustc_metadata::middle::mem_categorization::MemCategorizationContext [] [src]

pub struct MemCategorizationContext<'a, 'gcx, 'tcx> where 'gcx: 'a,
        'gcx: 'tcx,
        'tcx: 'a
{ pub infcx: &'a InferCtxt<'a, 'gcx, 'tcx>, // some fields omitted }
🔬 This is a nightly-only experimental API. (rustc_private)

Fields

🔬 This is a nightly-only experimental API. (rustc_private)

Methods

impl<'a, 'gcx, 'tcx> MemCategorizationContext<'a, 'gcx, 'tcx>
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

Returns the lifetime of a temporary created by expr with id id. This could be 'static if id is part of a constant expression.

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

Creates a cmt for an indexing operation ([]).

One subtle aspect of indexing that may not be immediately obvious: for anything other than a fixed-length vector, an operation like x[y] actually consists of two disjoint (from the point of view of borrowck) operations. The first is a deref of x to create a pointer p that points at the first element in the array. The second operation is an index which adds y*sizeof(T) to p to obtain the pointer to x[y]. cat_index will produce a resulting cmt containing both this deref and the indexing, presuming that base_cmt is not of fixed-length type.

Parameters

  • elt: the AST node being indexed
  • base_cmt: the cmt of elt

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

Trait Implementations

impl<'a, 'gcx, 'tcx> Clone for MemCategorizationContext<'a, 'gcx, 'tcx> where 'gcx: 'a,
        'gcx: 'tcx,
        'tcx: 'a
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<'a, 'gcx, 'tcx> Copy for MemCategorizationContext<'a, 'gcx, 'tcx> where 'gcx: 'a,
        'gcx: 'tcx,
        'tcx: 'a
[src]