spade_typeinference/
traits.rs

1use crate::equation::TypeVar;
2use spade_hir::{ImplBlock, ImplTarget, TraitName};
3use std::collections::HashMap;
4
5#[derive(Clone)]
6pub struct TraitImpl {
7    pub name: TraitName,
8    pub type_params: Vec<TypeVar>,
9    pub impl_block: ImplBlock,
10}
11
12#[derive(Clone)]
13pub struct TraitImplList {
14    pub inner: HashMap<ImplTarget, Vec<TraitImpl>>,
15}
16
17impl TraitImplList {
18    pub fn new() -> Self {
19        Self {
20            inner: HashMap::new(),
21        }
22    }
23}