Closed
Description
This is what will make inherited kinds work:
trait Bar : Copy {
fn g();
}
struct A {
x: int
}
impl A : Bar {
fn g() { }
}
fn main() {
}
The user is implementing Copy
, but the compiler also implements Copy
implicitly.
This will also allow kind-based 'assertions':
struct Foo { ... }
// Overlapping instance guarantees that `Foo` is copyable
impl Foo: Copy;
Metadata
Metadata
Assignees
Labels
No labels