]>
Commit | Line | Data |
---|---|---|
60c5eb7d | 1 | // check-pass |
0bf4aa26 | 2 | #![allow(dead_code)] |
e9174d1e | 3 | use std::marker::PhantomData; |
85aaf69f | 4 | |
e9174d1e SL |
5 | pub struct UnionedKeys<'a,K> |
6 | where K: UnifyKey + 'a | |
7 | { | |
8 | table: &'a mut UnificationTable<K>, | |
9 | root_key: K, | |
10 | stack: Vec<K>, | |
11 | } | |
62682a34 | 12 | |
e9174d1e SL |
13 | pub trait UnifyKey { |
14 | type Value; | |
15 | } | |
62682a34 | 16 | |
e9174d1e SL |
17 | pub struct UnificationTable<K:UnifyKey> { |
18 | values: Delegate<K>, | |
62682a34 | 19 | } |
e9174d1e SL |
20 | |
21 | pub struct Delegate<K>(PhantomData<K>); | |
22 | ||
23 | fn main() {} |