This commit is contained in:
aozhiwei 2021-12-27 16:30:31 +08:00
parent 806c0d176d
commit c88b019fb2
5 changed files with 17 additions and 20 deletions

View File

@ -1 +0,0 @@
../../third_party/f7/f7

View File

@ -1 +0,0 @@
../../third_party/q7/q7

View File

@ -4,12 +4,12 @@ use r9;
mod test;
mod mt;
mod metawrap;
pub enum MessagesUnion
{
XValue(Rc::<XValue>),
f2(mt::TxKeyConf)
MtwAliKeyConf(Rc::<metawrap::MtwAliKeyConf>)
}
type XValue = r9::XValue::<test::App>;
@ -18,29 +18,25 @@ type MetaMgr = r9::MetaMgr::<MessagesUnion>;
macro_rules! getMeta {
($metamgr:expr, $ty:ident, $idx:expr) => {
{
//if let Some(v) = $metamgr.get_byid(0, $idx) {
if 1 > 1 {
/*if let MessagesUnion::$ty(v1) = &(**v) {
//Option::<&Rc::<$ty>>::Some(v1);
Option::<&Rc::<$ty>>::None;
} else {
Option::<&Rc::<$ty>>::None;
}*/
Option::<&Rc::<$ty>>::None
} else {
Option::<&Rc::<$ty>>::None
};
Option::<&Rc::<$ty>>::None
let mut ret = Option::None;
if let Some(v) = $metamgr.get_byid(0, $idx) {
if let MessagesUnion::$ty(v1) = &(**v) {
ret = Some(v1);
}
}
ret
}
}
}
fn main() {
let mut metamgr = MetaMgr::new();
let b: Option::<&Rc::<XValue>> = getMeta!(metamgr, XValue, 0);
let c = metamgr.get_metalist(1);
let idx = 100;
let b = getMeta!(metamgr, MtwAliKeyConf, idx);
match b {
Some(v) => {
v.get_i64();
//v.get_i64();
}
None => {

View File

@ -0,0 +1,3 @@
pub struct MtwAliKeyConf {
pub i: crate::mt::AliKeyConf
}

2
third_party/r9 vendored

@ -1 +1 @@
Subproject commit 374a63d8e08659c1b9ba457421450c24fe3cf3c0
Subproject commit 8e98dcffb38d8e513f652e714940f2cdd59d7af0