pub enum SignatureTypeKind {
Callable(CallableShapeId),
Function(FunctionShapeId),
Union(Vec<TypeId>),
Intersection(Vec<TypeId>),
ReadonlyType(TypeId),
TypeParameter {
constraint: Option<TypeId>,
},
NeedsEvaluation(TypeId),
NoSignatures,
}Expand description
Classification for types when extracting call/construct signatures.
Variants§
Callable(CallableShapeId)
Callable type with shape_id - has call_signatures and construct_signatures
Function(FunctionShapeId)
Function type with shape_id - has single signature
Union(Vec<TypeId>)
Union type - get signatures from each member
Intersection(Vec<TypeId>)
Intersection type - get signatures from each member
ReadonlyType(TypeId)
Readonly wrapper - unwrap and get signatures from inner type
TypeParameter
Type parameter with optional constraint - may need to check constraint
NeedsEvaluation(TypeId)
Types that need evaluation before signature extraction (Conditional, Mapped, IndexAccess, KeyOf)
NoSignatures
Types without signatures (Intrinsic, Literal, Object without callable, etc.)
Trait Implementations§
Source§impl Clone for SignatureTypeKind
impl Clone for SignatureTypeKind
Source§fn clone(&self) -> SignatureTypeKind
fn clone(&self) -> SignatureTypeKind
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SignatureTypeKind
impl RefUnwindSafe for SignatureTypeKind
impl Send for SignatureTypeKind
impl Sync for SignatureTypeKind
impl Unpin for SignatureTypeKind
impl UnsafeUnpin for SignatureTypeKind
impl UnwindSafe for SignatureTypeKind
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