2016-04-02 7 views

ответ

5

Вариант enum также может быть импортирован в текущее пространство имен.

enum Test { 
    A, 
    B, 
} 

use Test::{A,B}; 

fn main() { 
    let t = A; 
    match t { 
     A => println!("A"), 
     B => println!("B"), 
    }; 
} 

И получается, что прелюдия ржавчины, поверх импорта Option, также импортирует Some и None.

+0

Не могли бы вы объяснить «прелюдию» немного больше? Я думаю, что это полезно в этом контексте, и мне очень нравится вопрос :) –

+0

@LukasKalbertodt: Ну, так же, как я искал существующий вопрос, объясняющий прелюдию, на которую я мог ссылаться, я обнаружил четкий дубликат http://stackoverflow.com/questions/30546644/why-dont-options-some-and-none-variantants-need-to-be-qualified/30546727 # 30546727 ... –

+1

@LukasKalbertodt: На самом деле, я не мог найти ни одного объяснения того, что прелюдия была и какова была его роль на SO, поэтому я сделал это в специальном вопросе [здесь] (http://stackoverflow.com/q/36384840/147192). Буду признателен за ваш отзыв, если у вас есть время. –