Enum espr::ir::TypeRef [−][src]
pub enum TypeRef {
SimpleType(SimpleType),
Named {
name: String,
scope: Scope,
is_simple: bool,
is_enumerate: bool,
},
Entity {
name: String,
scope: Scope,
is_supertype: bool,
},
Set {
base: Box<TypeRef>,
bound: Option<Bound>,
},
List {
base: Box<TypeRef>,
bound: Option<Bound>,
unique: bool,
},
}Variants
SimpleType(SimpleType)Tuple Fields of SimpleType
0: SimpleTypeFields of Named
Implementations
Returns true iff self is:
- a simple type,
- a named type whose underlying type is simple, or,
- a set or list of a type
xsuch thatx.is_simple() == true.
pub fn from_path(
ns: &Namespace<'_>,
ss: &Constraints,
path: &Path
) -> Result<Self, SemanticError>
Trait Implementations
fn legalize(
ns: &Namespace<'_>,
ss: &Constraints,
scope: &Scope,
ty: &Type
) -> Result<Self, SemanticError>
Auto Trait Implementations
impl RefUnwindSafe for TypeRef
impl UnwindSafe for TypeRef
Blanket Implementations
Mutably borrows from an owned value. Read more
Returns a Span covering the complete contents of this syntax tree
node, or Span::call_site() if this node is empty. Read more