172 похожих чатов

Как понять, имея конструктор енама, какого варианта это конструктор?

20 ответов

5 просмотров
mekosko- Автор вопроса

Как это сделать через макросы я понимаю, вопрос можно ли чисто на системе типов такое организовать

mekosko
Как это сделать через макросы я понимаю, вопрос мо...

так вариант - это же не тип, а значение) Так что только если макросами...

mekosko- Автор вопроса
Alex
так вариант - это же не тип, а значение) Так что т...

Хорошо, а можно ли достать это значение не вызывая конструктор?

mekosko
Хорошо, а можно ли достать это значение не вызывая...

в общем случае без прогона конструктора нельзя, т.к. там могут быть варианты, конструкторы которых выглядят абсолютно одинаково с точки зрения системы типов. Вот если у тебя будет enum в котором каждый вариант имеет строго разные наборы внутренних типов, то ещё можно как-то извратиться с таким... Но в общем случае невозможно.

mekosko- Автор вопроса

а нельзя тут у енама сделать какой-то метод, который вернет PartialEq, получить значения обоих ивентов и сравнить?

mekosko- Автор вопроса
mekosko
Это печально

если речь про твои enum'ы (а не про работу с чужими), то тут можно попробовать пойти извращаться в другую сторону: сделать свой enum времени компиляции... Ну чтобы варианты задавались типами и т.д. и т.п. В общем извращения типа метапрограммирования на шаблонах плюсов... )))

mekosko- Автор вопроса

Если бы был typeof...

Traveller Kolsky
Если бы был typeof...

и что он даст для энума?

mekosko- Автор вопроса

Пока что проблема как раз в том, чтобы избавиться от необходимости в Default

mekosko
Пока что проблема как раз в том, чтобы избавиться ...

может помогло бы, если бы была описана конкретная задача?

mekosko
Пока что проблема как раз в том, чтобы избавиться ...

да, но с Ваших слов надо же избавиться от Default. Короче, я не понял, сдаюсь ¯\_(ツ)_/¯

mekosko- Автор вопроса
S B
да, но с Ваших слов надо же избавиться от Default....

Чтобы избавиться от Default надо не вызывать конструктор вообще

mekosko
Чтобы избавиться от Default надо не вызывать конст...

а, то есть не от дефолт избавиться, а от функции, так понятнее

mekosko- Автор вопроса
mekosko
От вызова функции

а в таком виде почему нельзя?

mekosko- Автор вопроса
S B
screenshot а в таком виде почему нельзя?

Потому что это либа в которой Event это дженерик и я понятия не имею сколько там вариантов и какие они

Похожие вопросы

Обсуждают сегодня

Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
2
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
у меня программа тысяч на 10 строк. Там в основном моя собственная логика. А по содержанию она просто работает с файловой системой (мастер для бэкапов) и таблицей с данными о ...
Дмитрий Завгородний
5
У тебя в конфиге нигде нет deny all; или вообще любого deny?
Alexander Sherbakov
10
Карта сайта