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: SimpleType
Fields 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
x
such 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