futu_gateway_core/
security_display_name.rs1pub const APP_LANGUAGE_ZH: i32 = 0;
9pub const APP_LANGUAGE_HK: i32 = 1;
11pub const APP_LANGUAGE_EN: i32 = 2;
13pub const APP_LANGUAGE_JA: i32 = 5;
15
16#[must_use]
19pub fn cpp_security_display_name(
20 name_sc: &str,
21 name_tc: &str,
22 name_en: &str,
23 name_jp: &str,
24 app_lang: i32,
25) -> String {
26 let candidates: [&str; 4] = match app_lang {
27 APP_LANGUAGE_HK => [name_tc, name_sc, name_en, name_jp],
28 APP_LANGUAGE_EN => [name_en, name_sc, name_tc, name_jp],
29 APP_LANGUAGE_JA => [name_jp, name_en, name_sc, name_tc],
30 APP_LANGUAGE_ZH => [name_sc, name_tc, name_en, name_jp],
31 _ => [name_sc, name_tc, name_en, name_jp],
32 };
33 candidates
34 .into_iter()
35 .find(|candidate| !candidate.is_empty())
36 .unwrap_or("")
37 .to_string()
38}
39
40#[cfg(test)]
41mod tests;