Rust: указать аргументы шаблона при импорте "использовать ... как" - PullRequest
3 голосов
/ 07 марта 2019

Я пытаюсь указать параметр шаблона импортируемого класса, поэтому мне не нужно указывать его каждый раз, когда я хочу его использовать. Примерно так:

use self::binary_heap_plus::BinaryHeap<T,MinComparator> as BinaryMinHeap<T>;

Возможно ли это?

1 Ответ

3 голосов
/ 07 марта 2019

Возможно ли это?

Да, это возможно следующим образом:

pub type CustomResult<T> = Result<T, MyError>;

#[derive(Debug)]
pub enum MyError {
    MyError1,
}

fn result_returner(prm: i32) -> CustomResult<i32> {
    if prm == 1 {
        Ok(5)
    } else {
        Err(MyError::MyError1)
    }
}

А также вы можете сделать такие изменения типа имени при импорте:

use std::collections::HashMap as CustomNamedMap;

fn main() {
    let mut my_map = CustomNamedMap::new();
    my_map.insert(1, 2);

    println!("Value: {:?}", my_map[&1]);
}

Детская площадка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...