1
This commit is contained in:
parent
1b61eecd09
commit
6df64c08ad
@ -74,6 +74,7 @@ use crate::cs::cs_msgid as cs_msgid;
|
||||
struct Handler {
|
||||
msg_id: i32,
|
||||
handler_id: i32,
|
||||
cb: Box::<dyn FnMut (&f9::MsgHdr, &dyn MsgHandler)>,
|
||||
}
|
||||
|
||||
static mut HANDLERS: Vec<Option<Handler>> = Vec::new();
|
||||
@ -125,31 +126,29 @@ pub trait MsgHandler {`;
|
||||
data += `
|
||||
pub fn registe_handlers() {
|
||||
unsafe {
|
||||
HANDLERS.reserve(2000);
|
||||
for i in 0..1999 {
|
||||
HANDLERS.push(None);
|
||||
}
|
||||
HANDLERS.reserve(2000);
|
||||
for i in 0..1999 {
|
||||
HANDLERS.push(None);
|
||||
}
|
||||
`;
|
||||
this.csProtoPb.nested.cs.nestedArray.forEach(
|
||||
(item) => {
|
||||
if (item.name[0] == 'C' &&
|
||||
item.name[1] == 'M') {
|
||||
data += `
|
||||
HANDLERS[cs_msgid::CMMessageId_e::_${item.name} as usize] = Some(
|
||||
Handler {
|
||||
msg_id: cs_msgid::CMMessageId_e::_${item.name} as i32,
|
||||
handler_id: 0,
|
||||
/*
|
||||
Cb: func (hdr *f5.MsgHdr, handler MsgHandler) {
|
||||
handler.${item.name}(hdr, hdr.Msg.(*${item.name}))
|
||||
},
|
||||
*/
|
||||
});
|
||||
HANDLERS[cs_msgid::CMMessageId_e::_${item.name} as usize] = Some(
|
||||
Handler {
|
||||
msg_id: cs_msgid::CMMessageId_e::_${item.name} as i32,
|
||||
handler_id: 0,
|
||||
cb: Box::new(|_: &f9::MsgHdr, _: &dyn MsgHandler| {
|
||||
}),
|
||||
});
|
||||
`;
|
||||
}
|
||||
});
|
||||
data += `
|
||||
}}`;
|
||||
}
|
||||
}`;
|
||||
fs.writeFileSync('./src/cs/cs_auto_gen.rs', data);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user