aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/lib.rs
diff options
context:
space:
mode:
authorFlorian Diebold <[email protected]>2021-03-14 15:30:02 +0000
committerFlorian Diebold <[email protected]>2021-03-14 15:30:43 +0000
commiteea777c7148ac6c52434e8ea4913cdb50a466a3e (patch)
tree6d60ceca8815b4a39ebe531f951cbc8bcb24f3a9 /crates/hir_ty/src/lib.rs
parent3411fe3e84e641aad03abbc22eec33fdc29b15f8 (diff)
Use chalk_ir::FnSig
Diffstat (limited to 'crates/hir_ty/src/lib.rs')
-rw-r--r--crates/hir_ty/src/lib.rs13
1 files changed, 6 insertions, 7 deletions
diff --git a/crates/hir_ty/src/lib.rs b/crates/hir_ty/src/lib.rs
index ddcee2084..bc7a7369a 100644
--- a/crates/hir_ty/src/lib.rs
+++ b/crates/hir_ty/src/lib.rs
@@ -46,7 +46,7 @@ pub use lower::{
46}; 46};
47pub use traits::{InEnvironment, Obligation, ProjectionPredicate, TraitEnvironment}; 47pub use traits::{InEnvironment, Obligation, ProjectionPredicate, TraitEnvironment};
48 48
49pub use chalk_ir::{AdtId, BoundVar, DebruijnIndex, Mutability, Scalar, TyVariableKind}; 49pub use chalk_ir::{AdtId, BoundVar, DebruijnIndex, Mutability, Safety, Scalar, TyVariableKind};
50 50
51pub use crate::traits::chalk::Interner; 51pub use crate::traits::chalk::Interner;
52 52
@@ -105,10 +105,7 @@ impl TypeWalk for ProjectionTy {
105 } 105 }
106} 106}
107 107
108#[derive(Clone, Copy, PartialEq, Eq, Debug, Hash)] 108pub type FnSig = chalk_ir::FnSig<Interner>;
109pub struct FnSig {
110 pub variadic: bool,
111}
112 109
113#[derive(Clone, PartialEq, Eq, Debug, Hash)] 110#[derive(Clone, PartialEq, Eq, Debug, Hash)]
114pub struct FnPointer { 111pub struct FnPointer {
@@ -643,7 +640,7 @@ impl Ty {
643 pub fn fn_ptr(sig: CallableSig) -> Self { 640 pub fn fn_ptr(sig: CallableSig) -> Self {
644 TyKind::Function(FnPointer { 641 TyKind::Function(FnPointer {
645 num_args: sig.params().len(), 642 num_args: sig.params().len(),
646 sig: FnSig { variadic: sig.is_varargs }, 643 sig: FnSig { abi: (), safety: Safety::Safe, variadic: sig.is_varargs },
647 substs: Substs(sig.params_and_return), 644 substs: Substs(sig.params_and_return),
648 }) 645 })
649 .intern(&Interner) 646 .intern(&Interner)
@@ -945,7 +942,9 @@ impl Ty {
945 } 942 }
946 } 943 }
947 TyKind::Alias(AliasTy::Projection(projection_ty)) => { 944 TyKind::Alias(AliasTy::Projection(projection_ty)) => {
948 match from_assoc_type_id(projection_ty.associated_ty_id).lookup(db.upcast()).container 945 match from_assoc_type_id(projection_ty.associated_ty_id)
946 .lookup(db.upcast())
947 .container
949 { 948 {
950 AssocContainerId::TraitId(trait_id) => Some(trait_id), 949 AssocContainerId::TraitId(trait_id) => Some(trait_id),
951 _ => None, 950 _ => None,