База Hintsage

Traits и generics

Traits, bounds, generics, associated types и dispatch.

Практика

Вопросы: Traits и generics

В API объект должен поддерживать оба независимых трейта. Разберите, допустим ли такой trait object и как выразить эту границу корректно:

trait Readable {
    fn read(&self) -> String;
}

trait Writable {
    fn write(&mut self, data: &str);
}

fn process(value: &mut (dyn Readable + Writable)) {
    value.write("data");
    println!("{}", value.read());
}

Показано 41–49 из 49

Восстановление доступа