LINUX.ORG.RU

История изменений

Исправление alysnix, (текущая версия) :

struct MyFancyTreeView {
  parent_tree_view: TreeView,
  default_indent: i32
}

#[redirect(parent_tree_view, setIndent, getIndent, render, preRender, ... )]
impl TreeViewTrait for MyFancyTreeView
{
  fn resetIndent(&mut self) {
    self.parent_tree_view.setIndent(self.default_indent)
  }
}

А что это такое вообще? А это несуществующий макрос redirect, который тем не менее вероятно можно написать и который использовался бы для автоматической генерации декораторов. Был бы надёжнее вашего сраного наследования, так как требовал бы от пользователя явного перечисления функций, которые должны быть перенаправлены «предку».

это единственный «пример» что я нашел. ну давайте на него смотреть.

первое что пугает - цитирую

А это несуществующий макрос redirect, который тем не менее вероятно можно написать и который использовался бы для автоматической генерации декораторов. Был бы надёжнее вашего сраного наследования, так как требовал бы от пользователя явного перечисления функций, которые должны быть перенаправлены «предку».

пугает упоминание о «несуществующем макросе, который верятно(!!!) можно написать».

паслушьте. совсем не интересно, что там у вас в расте не существует, и что ВЕРОЯТНО (но не точно! гы) можно написать. интересуют стандартные механизмы языка, а не «несуществующие макросы».

что значит - функции перенаправляемые предку? как предок может ими воспользоваться, он о них не знает ничего? или это виртуальные функции, о которых предок все знает? тут непонятно.

да и что мы видим из этой записи?

есть левая структура куда включен TreeView. типа ого-го «наследование».

и есть имплементация трейта TreeViewTrait (у которого с пару сотен методов) с одной всего функцией. то есть теперь эта имплементация с одним методом стала совместима со всеми, кто реализует пару сотен?

кого отдавать вообще ГУЮ в качестве кастомного окна тут? чтобы вставить в какой-нить book.

короче непонятно.

Исходная версия alysnix, :

struct MyFancyTreeView {
  parent_tree_view: TreeView,
  default_indent: i32
}

#[redirect(parent_tree_view, setIndent, getIndent, render, preRender, ... )]
impl TreeViewTrait for MyFancyTreeView
{
  fn resetIndent(&mut self) {
    self.parent_tree_view.setIndent(self.default_indent)
  }
}

А что это такое вообще? А это несуществующий макрос redirect, который тем не менее вероятно можно написать и который использовался бы для автоматической генерации декораторов. Был бы надёжнее вашего сраного наследования, так как требовал бы от пользователя явного перечисления функций, которые должны быть перенаправлены «предку».

это единственный «пример» что я нашел. ну давайте на него смотреть.

первое что пугает - цитирую

А это несуществующий макрос redirect, который тем не менее вероятно можно написать и который использовался бы для автоматической генерации декораторов. Был бы надёжнее вашего сраного наследования, так как требовал бы от пользователя явного перечисления функций, которые должны быть перенаправлены «предку».

пугает упоминание о «несуществующем макросе, который верятно(!!!) можно написать».

паслушьте. совсем не интересно, что там у вас в расте не существует, что и что ВЕРОЯТНО (но не точно! гы) можно написать. интересуют стандартные механизмы языка, а не «несуществующие макросы».

что значит - функции перенаправляемые предку? как предок может ими воспользоваться, он о них не знает ничего? или это виртуальные функции, о которых предок все знает? тут непонятно.

да и что мы видим из этой записи?

есть левая структура куда включен TreeView. типа ого-го «наследование».

и есть имплементация трейта TreeViewTrait (у которого с пару сотен методов) с одной всего функцией. то есть теперь эта имплементация с одним методом стала совместима со всеми, кто реализует пару сотен?

кого отдавать вообще ГУЮ в качестве кастомного окна тут? чтобы вставить в какой-нить book.

короче непонятно.