24 lines
367 B
Rust
24 lines
367 B
Rust
// check-pass
|
|
#![allow(dead_code)]
|
|
use std::marker::PhantomData;
|
|
|
|
pub struct UnionedKeys<'a,K>
|
|
where K: UnifyKey + 'a
|
|
{
|
|
table: &'a mut UnificationTable<K>,
|
|
root_key: K,
|
|
stack: Vec<K>,
|
|
}
|
|
|
|
pub trait UnifyKey {
|
|
type Value;
|
|
}
|
|
|
|
pub struct UnificationTable<K:UnifyKey> {
|
|
values: Delegate<K>,
|
|
}
|
|
|
|
pub struct Delegate<K>(PhantomData<K>);
|
|
|
|
fn main() {}
|