Macro chromium::import!
Depois de adicionar :my_rust_lib
Ă s deps
do GN, ainda precisamos aprender como importar e usar my_rust_lib
de my_rust_lib_unittest.rs
. NĂŁo fornecemos um crate_name
explĂcito para my_rust_lib
, portanto, seu nome de crate Ă© calculado com base no caminho e nome do alvo completo. Felizmente, podemos evitar trabalhar com um nome tĂŁo difĂcil de usar usando o macro chromium::import!
do crate chromium
automaticamente importado:
chromium::import! {
"//ui/base:my_rust_lib";
}
use my_rust_lib::my_function_under_test;
Por baixo dos panos, a macro se expande para algo semelhante a:
extern crate ui_sbase_cmy_urust_ulib as my_rust_lib;
use my_rust_lib::my_function_under_test;
Mais informaçÔes podem ser encontradas no comentårio de documentação da macro chromium::import
.
rust_static_library
suporta a especificação de um nome explĂcito via propriedade crate_name
, mas isso Ă© desencorajado. E Ă© desencorajado porque o nome do crate tem que ser globalmente Ășnico. crates.io garante a unicidade de seus nomes de crate, portanto, os alvos cargo_crate
GN (gerados pela ferramenta gnrt
abordada em uma seção posterior) usam nomes curtos de crate.