Практика модулей в Rust
Дан следующий код:
mod greet {
fn hello() -> String {
String::from("hi")
}
}
fn main() {
let text = greet::hello();
println!("{}", text);
}
Исправьте объявление так, чтобы программа собиралась, не меняя тело точки входа.
Дан файл модуля:
pub fn label() -> &'static str {
"rust"
}
Сохраните его отдельным файлом модуля, подключите к точке входа и выведите метку.
Даны блоки:
mod math {
pub fn twice(n: i32) -> i32 {
n * 2
}
}
mod app {
pub fn run() -> i32 {
crate::math::twice(5)
}
}
Допишите точку входа, которая печатает результат запуска приложения.
Дан фрагмент:
mod store {
pub fn name() -> &'static str {
"shop"
}
}
fn main() {
let title = store::name();
println!("{}", title);
}
Сделайте так, чтобы в точке входа осталось короткое имя без префикса модуля, и выведите его.
Создайте проект с именем "tasks".
Напишите, какие поля имени и редакции
появятся в описании проекта и какой
командой запустите точку входа из
корня каталога.
Дана функция в проекте:
pub fn sum(a: i32, b: i32) -> i32 {
a + b
}
Добавьте тест, который проверяет
результат для чисел 2 и 2,
и запустите тесты проекта.