вопрос: можно ли написать, что если impl Human - то это прямое присваивание метода, а если impl SomeTrait for Human - то это косвенное присвание? Просто в первом случае мы прямо указываем, что "вот такой метод присвой типу", а во втором - "сначала прийди в трейт, глянь какие там есть, а потом уже определи/переопредели и присвой". Насколько имеет смысл вообще такое обозначение прямого присваивания и косвенного?
p.s. написал этот же вопрос и в beginners, но не могу быть уверенным, что это begginer level question
в обоих случаях это обычное присваивание
Мне кажется, лучше не вводить собственную терминологию. В Расте и так много специальной терминологии. Кмк, лучше всего объяснить буквально что происходит.
Само по себе оно обычное, но если я хочу вызвать одноименный метод из присвоенного трейтом, то мне нужно вызвать SomeTrait::method(&struct), а при прямом присваивании - struct_instance.method()
Обсуждают сегодня