Struct rustc::ty::MethodCall [] [src]

pub struct MethodCall {
    pub expr_id: NodeId,
    pub autoderef: u32,
}
🔬 This is a nightly-only experimental API. (rustc_private)

With method calls, we store some extra information in side tables (i.e method_map). We use MethodCall as a key to index into these tables instead of just directly using the expression's NodeId. The reason for this being that we may apply adjustments (coercions) with the resulting expression also needing to use the side tables. The problem with this is that we don't assign a separate NodeId to this new expression and so it would clash with the base expression if both needed to add to the side tables. Thus to disambiguate we also keep track of whether there's an adjustment in our key.

Fields

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

Methods

impl MethodCall
[src]

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

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

Trait Implementations

impl Clone for MethodCall
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Copy for MethodCall
[src]

impl PartialEq for MethodCall
[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 MethodCall
[src]

impl Hash for MethodCall
[src]

Feeds this value into the state given, updating the hasher as necessary.

Feeds a slice of this type into the state provided.

impl Debug for MethodCall
[src]

Formats the value using the given formatter.

impl Encodable for MethodCall
[src]

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

deprecated in favor of rustc-serialize on crates.io

impl Decodable for MethodCall
[src]

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

deprecated in favor of rustc-serialize on crates.io