[][src]Enum c2rust_refactor::rewrite::ExprPrec

pub enum ExprPrec {
    Normal(i8),
    Cond(i8),
    Callee(i8),
    LeftLess(i8),
}

Precedence information about the context surrounding an expression. Used to determine whether an expr needs to be parenthesized.

Variants

Normal(i8)

Normal behavior. Parenthesize expr if its precedence is less than the given value.

Cond(i8)

Conditional-like position. Parenthesize lower precedence, and also parenthesize exprs with outer struct literals.

Callee(i8)

Callee position. Parenthesize lower precedence, and also parenthesize struct and tuple field expressions (so the call is not mistaken for a method call).

LeftLess(i8)

Left of < or <<. We have to parenthesize casts in this position because the less than is interpreted as the start of generic arguments.

Trait Implementations

impl Eq for ExprPrec[src]

impl Copy for ExprPrec[src]

impl PartialEq<ExprPrec> for ExprPrec[src]

impl Clone for ExprPrec[src]

default fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for ExprPrec[src]

Auto Trait Implementations

impl Send for ExprPrec

impl Sync for ExprPrec

Blanket Implementations

impl<T> Lone for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<E> SpecializationError for E[src]

impl<T> Erased for T[src]

impl<T> Send for T where
    T: ?Sized
[src]

impl<T> Sync for T where
    T: ?Sized
[src]

impl<T> Same for T

type Output = T

Should always be Self

impl<Q, K> Equivalent for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> MaybeResult for T[src]

impl<'a, T> Captures for T where
    T: ?Sized
[src]

impl<T> Erased for T

impl<T> Make for T[src]

impl<T> Slottable for T[src]