Struct rustc_trans::middle::region::BlockRemainder
[−]
[src]
pub struct BlockRemainder {
pub block: u32,
pub first_statement_index: u32,
}rustc_private)Represents a subscope of block for a binding that is introduced
by block.stmts[first_statement_index]. Such subscopes represent
a suffix of the block. Note that each subscope does not include
the initializer expression, if any, for the statement indexed by
first_statement_index.
For example, given { let (a, b) = EXPR_1; let c = EXPR_2; ... }:
the subscope with
first_statement_index == 0is scope of bothaandb; it does not include EXPR_1, but does include everything after that firstlet. (If you want a scope that includes EXPR_1 as well, then do not useCodeExtentData::Remainder, but instead anotherCodeExtentthat encompasses the whole block, e.g.CodeExtentData::Misc.the subscope with
first_statement_index == 1is scope ofc, and thus does not include EXPR_2, but covers the....
Fields
block: u32
rustc_private)first_statement_index: u32
rustc_private)Trait Implementations
Derived Implementations
impl Copy for BlockRemainder
impl Debug for BlockRemainder
fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
impl Decodable for BlockRemainder
fn decode<__D>(__arg_0: &mut __D) -> Result<BlockRemainder, __D::Error> where __D: Decoder
impl Encodable for BlockRemainder
impl Hash for BlockRemainder
fn hash<__H>(&self, __arg_0: &mut __H) where __H: Hasher
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher1.3.0
Feeds a slice of this type into the state provided.
impl Ord for BlockRemainder
fn cmp(&self, __arg_0: &BlockRemainder) -> Ordering
This method returns an Ordering between self and other. Read more
impl Eq for BlockRemainder
impl PartialOrd<BlockRemainder> for BlockRemainder
fn partial_cmp(&self, __arg_0: &BlockRemainder) -> Option<Ordering>
This method returns an ordering between self and other values if one exists. Read more
fn lt(&self, __arg_0: &BlockRemainder) -> bool
This method tests less than (for self and other) and is used by the < operator. Read more
fn le(&self, __arg_0: &BlockRemainder) -> bool
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
fn gt(&self, __arg_0: &BlockRemainder) -> bool
This method tests greater than (for self and other) and is used by the > operator. Read more
fn ge(&self, __arg_0: &BlockRemainder) -> bool
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
impl PartialEq<BlockRemainder> for BlockRemainder
fn eq(&self, __arg_0: &BlockRemainder) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &BlockRemainder) -> bool
This method tests for !=.
impl Clone for BlockRemainder
fn clone(&self) -> BlockRemainder
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more