Struct rustc_trans::middle::ty::ParamBoundsExperimental [-]  [+] [src]

pub struct ParamBounds<'tcx> {
    pub region_bounds: Vec<Region>,
    pub builtin_bounds: EnumSet<BuiltinBound>,
    pub trait_bounds: Vec<Binder<Rc<TraitRef<'tcx>>>>,
    pub projection_bounds: Vec<Binder<ProjectionPredicate<'tcx>>>,
}

Bounds suitable for a named type parameter like A in fn foo<A> as well as the existential type parameter in an object type.

Fields

region_bounds
builtin_bounds
trait_bounds
projection_bounds

Methods

impl<'tcx> ParamBounds<'tcx>

fn empty() -> ParamBounds<'tcx>

Trait Implementations

impl<'tcx> TypeFoldable<'tcx> for ParamBounds<'tcx>

fn fold_with<F: TypeFolder<'tcx>>(&self, folder: &mut F) -> ParamBounds<'tcx>

impl<'tcx> Repr<'tcx> for ParamBounds<'tcx>

fn repr(&self, tcx: &ctxt<'tcx>) -> String

impl<'tcx> UserString<'tcx> for ParamBounds<'tcx>

fn user_string(&self, tcx: &ctxt<'tcx>) -> String

Derived Implementations

impl<'tcx> Show for ParamBounds<'tcx>

fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>

impl<'tcx> Clone for ParamBounds<'tcx>

fn clone(&self) -> ParamBounds<'tcx>

fn clone_from(&mut self, &ParamBounds<'tcx>)

impl<'tcx, __S: Writer> Hash<__S> for ParamBounds<'tcx>

fn hash(&self, __arg_0: &mut __S)

impl<'tcx> Eq for ParamBounds<'tcx>

fn assert_receiver_is_total_eq(&self)

impl<'tcx> PartialEq<ParamBounds<'tcx>> for ParamBounds<'tcx>

fn eq(&self, __arg_0: &ParamBounds<'tcx>) -> bool

fn ne(&self, __arg_0: &ParamBounds<'tcx>) -> bool

fn ne(&self, &ParamBounds<'tcx>) -> bool