Информация об изменениях

Сообщение Re: Как создать экземпляр option[void].None? от 09.01.2016 19:41

Изменено 09.01.2016 19:42 VladD2

Здравствуйте, vaskir, Вы писали:

V>Может быть в Nemerle есть полноценный тип unit для таких вещей?


Полноценного быть не может, так как дотнет не поддерживает void как полноценный тип. Есть Nemerle.FakeVoid (аналог init в F#). Но думаю, что он тебе в данном случае не поможет, так как "| NotEmpty" писать нельзя просто потому что это не допустил автор макроса "active". Это надо что-то подкрутить в самом макросе. Тогда и Nemerle.FakeVoid не понадобится.

А вообще, на практике эти этив-птаттерны как-то не используются. По крайней мере у меня ни разу не возникало такое желание.

Еще есть extensible matching. Вот его я на практике использовал.
Re: Как создать экземпляр option[void].None?
Здравствуйте, vaskir, Вы писали:

V>Может быть в Nemerle есть полноценный тип unit для таких вещей?


Полноценного быть не может, так как дотнет не поддерживает void как полноценный тип. Есть Nemerle.FakeVoid (аналог unit в F#). Но думаю, что он тебе в данном случае не поможет, так как "| NotEmpty" писать нельзя просто потому что это не допустил автор макроса "active". Это надо что-то подкрутить в самом макросе. Тогда и Nemerle.FakeVoid не понадобится.

А вообще, на практике эти этив-птаттерны как-то не используются. По крайней мере у меня ни разу не возникало такое желание.

Еще есть extensible matching. Вот его я на практике использовал.