2017-08-20 07:11:58 -07:00
|
|
|
#![allow(unused_imports)]
|
|
|
|
#![allow(unused_variables)]
|
|
|
|
#![allow(dead_code)]
|
|
|
|
use interface::*;
|
|
|
|
|
2017-08-29 11:37:51 -07:00
|
|
|
#[derive(Default, Clone)]
|
2017-08-20 07:11:58 -07:00
|
|
|
struct PersonsItem {
|
|
|
|
user_name: String,
|
2018-05-19 05:01:11 -07:00
|
|
|
age: u8,
|
2017-08-20 07:11:58 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
pub struct Persons {
|
|
|
|
emit: PersonsEmitter,
|
|
|
|
model: PersonsList,
|
|
|
|
list: Vec<PersonsItem>,
|
|
|
|
}
|
|
|
|
|
|
|
|
impl PersonsTrait for Persons {
|
2017-09-03 08:32:46 -07:00
|
|
|
fn new(emit: PersonsEmitter, model: PersonsList) -> Persons {
|
2017-08-20 07:11:58 -07:00
|
|
|
Persons {
|
|
|
|
emit: emit,
|
|
|
|
model: model,
|
|
|
|
list: vec![PersonsItem::default(); 10],
|
|
|
|
}
|
|
|
|
}
|
2018-10-25 15:32:02 -07:00
|
|
|
fn emit(&mut self) -> &mut PersonsEmitter {
|
|
|
|
&mut self.emit
|
2017-08-20 07:11:58 -07:00
|
|
|
}
|
2017-08-22 04:45:34 -07:00
|
|
|
fn row_count(&self) -> usize {
|
|
|
|
self.list.len()
|
2017-08-20 07:11:58 -07:00
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn user_name(&self, index: usize) -> &str {
|
|
|
|
&self.list[index].user_name
|
2017-08-20 07:11:58 -07:00
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn set_user_name(&mut self, index: usize, v: String) -> bool {
|
|
|
|
self.list[index].user_name = v;
|
2017-08-20 07:11:58 -07:00
|
|
|
true
|
|
|
|
}
|
|
|
|
}
|
2017-08-28 00:28:48 -07:00
|
|
|
|
2018-05-19 05:01:11 -07:00
|
|
|
pub struct NoRole {
|
|
|
|
emit: NoRoleEmitter,
|
|
|
|
model: NoRoleList,
|
|
|
|
list: Vec<PersonsItem>
|
|
|
|
}
|
|
|
|
|
|
|
|
impl NoRoleTrait for NoRole {
|
|
|
|
fn new(emit: NoRoleEmitter, model: NoRoleList) -> NoRole {
|
|
|
|
NoRole {
|
|
|
|
emit: emit,
|
|
|
|
model: model,
|
|
|
|
list: vec![PersonsItem::default(); 10],
|
|
|
|
}
|
|
|
|
}
|
2018-10-25 15:32:02 -07:00
|
|
|
fn emit(&mut self) -> &mut NoRoleEmitter {
|
|
|
|
&mut self.emit
|
2018-05-19 05:01:11 -07:00
|
|
|
}
|
|
|
|
fn row_count(&self) -> usize {
|
|
|
|
self.list.len()
|
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn user_name(&self, index: usize) -> &str {
|
|
|
|
&self.list[index].user_name
|
2018-05-19 05:01:11 -07:00
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn set_user_name(&mut self, index: usize, v: String) -> bool {
|
|
|
|
self.list[index].user_name = v;
|
2018-05-19 05:01:11 -07:00
|
|
|
true
|
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn user_age(&self, index: usize) -> u8 {
|
|
|
|
self.list[index].age
|
2018-05-19 05:01:11 -07:00
|
|
|
}
|
2018-06-08 05:21:35 -07:00
|
|
|
fn set_user_age(&mut self, index: usize, v: u8) -> bool {
|
|
|
|
self.list[index].age = v;
|
2018-05-19 05:01:11 -07:00
|
|
|
true
|
|
|
|
}
|
|
|
|
}
|