#[non_exhaustive]pub enum TypeEvidence {
Show 13 variants
Literal,
VariableInitializer {
name: String,
},
Assignment {
name: String,
},
HashSlot {
hash: String,
key: String,
},
HashRefSlot {
base: String,
key: String,
},
ConstructorCall {
package: String,
},
BlessLiteral {
package: String,
},
AccessorReturn {
method: String,
field: String,
},
MethodReturn {
method: String,
package: String,
},
MooseIsa {
attr: String,
isa: String,
},
ObjectPadField {
field: String,
},
WorkspaceSymbol {
package: String,
},
Heuristic {
reason: String,
},
}Expand description
Evidence explaining how a type fact was produced.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Literal
Literal syntax provided the fact.
VariableInitializer
Variable initializer provided the fact.
Assignment
Assignment provided the fact.
HashSlot
Plain hash slot evidence, such as $hash{key}.
HashRefSlot
Hash-reference slot evidence, such as $hashref->{key}.
ConstructorCall
Constructor call evidence, such as Package->new.
BlessLiteral
Bless literal evidence.
AccessorReturn
Accessor return evidence, such as $self->db returning the db field.
MethodReturn
Method-return evidence, such as $self->db returning a constructed package.
MooseIsa
Moose/Moo isa evidence for an attribute.
ObjectPadField
Object::Pad field evidence.
WorkspaceSymbol
Workspace symbol evidence.
Heuristic
Heuristic fallback evidence.
Trait Implementations§
Source§impl Clone for TypeEvidence
impl Clone for TypeEvidence
Source§fn clone(&self) -> TypeEvidence
fn clone(&self) -> TypeEvidence
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TypeEvidence
impl Debug for TypeEvidence
Source§impl PartialEq for TypeEvidence
impl PartialEq for TypeEvidence
Source§fn eq(&self, other: &TypeEvidence) -> bool
fn eq(&self, other: &TypeEvidence) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for TypeEvidence
Auto Trait Implementations§
impl Freeze for TypeEvidence
impl RefUnwindSafe for TypeEvidence
impl Send for TypeEvidence
impl Sync for TypeEvidence
impl Unpin for TypeEvidence
impl UnsafeUnpin for TypeEvidence
impl UnwindSafe for TypeEvidence
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more