finished basic traits
This commit is contained in:
@@ -81,19 +81,19 @@ fn main(): i64 {
|
||||
}
|
||||
}
|
||||
|
||||
// type TestTrait trait {
|
||||
// fn class_method(id: i64): Self;
|
||||
// fn instance_method(self: Self): i64;
|
||||
// fn default_impl(self: Self): i64 {
|
||||
// return self.instance_method();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// impl TestTrait for User {
|
||||
// fn class_method(id: i64): Self {
|
||||
// return User{id: id,};
|
||||
// }
|
||||
// fn instance_method(self: Self): i64 {
|
||||
// return self.get_id();
|
||||
// }
|
||||
// }
|
||||
type TestTrait trait {
|
||||
fn class_method(id: i64): Self;
|
||||
fn instance_method(self: Self): i64;
|
||||
fn default_impl(self: Self): i64 {
|
||||
return self.instance_method();
|
||||
}
|
||||
}
|
||||
|
||||
impl TestTrait for User {
|
||||
fn class_method(id: i64): Self {
|
||||
return User{id: id,};
|
||||
}
|
||||
fn instance_method(self: Self): i64 {
|
||||
return self.get_id();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user