История изменений
Исправление Siborgium, (текущая версия) :
Не «принимается», а «признаю, что сишный визит - говно и никакого контроля за полнотой там нет».
Компилятор обеспечил покрытие обработчиком всех альтернатив, выполнив проверку в компайлтайме. Если ты не знаешь, что обработчик int пригоден для обработки char – ты не знаешь крестов. Что, впрочем, уже многократно было показано тобой же ранее.
А, т.е. в тот момент, когда оказалось что фича тупо не работает
Какая фича здесь не работает, шиз?
Коль скоро этот тупой std::variant обещает индексировать варианты по их типам, то путать их он не должен
Бездарность, visit ничего не «перепутал». Перепутал типы ты.
не должно компиляться. Ну чтоб если кто сдуру запихает в варианты разные typedef-алиасы для одного типа,
Никого не волнуют идиоты. Если ты идиот – у тебя и так ничего работать не будет, сколько тебя не охраняй.
Нет, это ты идиот. Тупой как пробка.
Нет, это ты идиот. Ты сам придумал контекст и обижаешься, что я запаковал его в структурку.
в которых я рассказываю о реализации типа-суммы в С++ на примере Boost.Variant.
Дебилоид. Я писал о плюсах до std::variant.
Бездарный идиот, какое нахрен отношение имеет std::variant к Boost.Variant?
если нужна тебе тип-сумма, то на старых плюсах ты делал её наследованием.
Чучело пытается съехать с того, что википедия не считает наследование реализацией типа-суммы, как я писал ранее, со всеми ссылками.
Родство с плюсами из 90х признавать не хочешь
Цитату, ссылку на сообщение.
, но и сказать, что за принципиальное изменение создало современные плюсы, которое при этом не существовало в 90х, ты тоже не знаешь.
Балабол просто лжет, надеясь, что никто не прочитает сообщение, на которое он отвечает. Смотрим ссылку и оригинальную цитату:
Ты заврался. Речь шла о периоде, и только когда ты понял, что ты слит, ты решил потребовать магическую фичу. Но я отвечу: constexpr, auto, вариадики и замыкания.
Сейчас он попытается съехать на «не увидел», «не заметил», как он уже многократно делал ранее в ходе обсуждения.
Если роль класса состоит в отрисовке примитивов, кто как не он должен эту отрисовку в себя инкапсулировать?
Он должен инкапсулировать, а не иметь доступ к кишкам отрисовываемых классов.
Где тут хоть одно слово про «полиморфизм»? Нет его. Сказанное вполне понятно, енумы неудобны, не расширяются, поэтому, все пользуются трейтами.
Балабол продолжает вырывать цитаты из контекста, в котором я доказывал, что visit отличается от match расширяемостью, которая достигается через полиморфность.
Тут ещё сильнее утверждение. Ты составил его пытаясь соскочить, подменить «не используется» «публичным интерфейсом».
Балабол пытается сделать вид, что он не увидел, что в одной из лучших программ на Rust, ripgrep, enum’ы используются в 6 раз реже, чем структуры – статистика, которую я приводил ранее, и что «публичный интерфейс» я использовал как пример легкой метрики.
Причем пример с ripgrep показателен еще и тем, что это не библиотека, которой важно быть расширяемой и поддерживать стабильный интерфейс (в Rust звучит как шутка), а утилита.
Матч по результату, матч по перечислению ошибок - это типа норм, так можно.
Нет, это полное дерьмо, которое в Rust только потому, что это бездарный язык, в котором иначе нельзя.
А вот матч по полезным данным - это не, так нельзя, надо трейт пилить.
Речь вообще не о полезности данных, а о полиморфности. resolve ты для Ok и Err не напишешь, потому что резолвить ошибку это бред.
Т.е. используется даже для того чтоб экономить выделение памяти в куче.
Полное дерьмо. В реальном языке реализуется SBO, опционально с параметром для размера вектора. В Rust – это убожество.
Исходная версия Siborgium, :
Не «принимается», а «признаю, что сишный визит - говно и никакого контроля за полнотой там нет».
Компилятор обеспечил покрытие обработчиком всех альтернатив, выполнив проверку в компайлтайме. Если ты не знаешь, что обработчик int пригоден для обработки char – ты не знаешь крестов. Что, впрочем, уже многократно было показано тобой же ранее.
А, т.е. в тот момент, когда оказалось что фича тупо не работает
Какая фича здесь не работает, шиз?
Коль скоро этот тупой std::variant обещает индексировать варианты по их типам, то путать их он не должен
Бездарность, visit ничего не «перепутал». Перепутал типы ты.
не должно компиляться. Ну чтоб если кто сдуру запихает в варианты разные typedef-алиасы для одного типа,
Никого не волнуют идиоты. Если ты идиот – у тебя и так ничего работать не будет, сколько тебя не охраняй.
Нет, это ты идиот. Тупой как пробка.
Нет, это ты идиот. Ты сам придумал контекст и обижаешься, что я запаковал его в структурку.
в которых я рассказываю о реализации типа-суммы в С++ на примере Boost.Variant.
Дебилоид. Я писал о плюсах до std::variant.
Бездарный идиот, какое нахрен отношение имеет std::variant к Boost.Variant?
если нужна тебе тип-сумма, то на старых плюсах ты делал её наследованием.
Чучело пытается съехать с того, что википедия не считает наследование реализацией типа-суммы, как я писал ранее, со всеми ссылками.
Родство с плюсами из 90х признавать не хочешь
Цитату, ссылку на сообщение.
, но и сказать, что за принципиальное изменение создало современные плюсы, которое при этом не существовало в 90х, ты тоже не знаешь.
Балабол просто лжет, надеясь, что никто не прочитает сообщение, на которое он отвечает. Смотрим ссылку и оригинальную цитату:
Ты заврался. Речь шла о периоде, и только когда ты понял, что ты слит, ты решил потребовать магическую фичу. Но я отвечу: constexpr, auto, вариадики и замыкания.
Сейчас он попытается съехать на «не увидел», «не заметил», как он уже многократно делал ранее в ходе обсуждения.
Если роль класса состоит в отрисовке примитивов, кто как не он должен эту отрисовку в себя инкапсулировать?
Он должен инкапсулировать, а не иметь доступ к кишкам отрисовываемых классов.
Где тут хоть одно слово про «полиморфизм»? Нет его. Сказанное вполне понятно, енумы неудобны, не расширяются, поэтому, все пользуются трейтами.
Балабол продолжает вырывать цитаты из контекста, в котором я доказывал, что visit отличается от match расширяемостью, которая достигается через полиморфность.
Тут ещё сильнее утверждение. Ты составил его пытаясь соскочить, подменить «не используется» «публичным интерфейсом».
Балабол пытается сделать вид, что он не увидел, что в одной из лучших программ на Rust, ripgrep, enum’ы используются в 6 раз реже, чем структуры – статистика, которую я приводил ранее, и что «публичный интерфейс» я использовал как пример легкой метрики.
Причем пример с ripgrep показателен еще и тем, что это не библиотека, которой важно быть расширяемой и поддерживать стабильный интерфейс (в Rust звучит как шутка), а утилита.
Матч по результату, матч по перечислению ошибок - это типа норм, так можно.
Нет, это полное дерьмо, которое в Rust только потому, что это бездарный язык, в котором иначе нельзя.
А вот матч по полезным данным - это не, так нельзя, надо трейт пилить.
Речь вообще не о полезности данных, а о полиморфности. resolve ты для Ok и Err не напишешь, потому что резолвить ошибку это бред.