Атрибуты свойств (TCustomAttribute)
Модератор: Модераторы
Атрибуты свойств (TCustomAttribute)
Кто знает, тема http://wiki.freepascal.org/Property_attributes заглохла насовсем?
Отвечу сам себе.
Если верить тому что тут http://forum.lazarus.freepascal.org/index.php/topic,41935.msg292924.htm, то тема не то что бы заглохла, отцы-основатели не очень хотят добавлять эту фичу.
Хотя указано что работа завершена и ждет мержа в транк. https://foundation.freepascal.org/projects/project-3
Выкатили fixes_3_2 - в нем нет этой фичи...
Если верить тому что тут http://forum.lazarus.freepascal.org/index.php/topic,41935.msg292924.htm, то тема не то что бы заглохла, отцы-основатели не очень хотят добавлять эту фичу.
Хотя указано что работа завершена и ждет мержа в транк. https://foundation.freepascal.org/projects/project-3
Выкатили fixes_3_2 - в нем нет этой фичи...
Эх, расширяемое RTTI, давняя мечта.
serbod писал(а):А зачем оно надо? Какие проблемы решает?
Например для более простой сериализации/десериализации объектов. Да множество применений.
- serbod
- постоялец
- Сообщения: 449
- Зарегистрирован: 16.09.2016 10:03:02
- Откуда: Минск
- Контактная информация:
alps писал(а):Например для более простой сериализации/десериализации объектов.
Для этого достаточно обычного RTTI, а можно и совсем без него обойтись, даже проще получится. Да я сто раз так делал! =)
А какие еще применения? Я вот думал о метаданных, чтобы автоматически моделировать визуальные формы для произвольных опций в окне настроек программы. Но на деле обошелся обычным ini файлом, в котором описана структура элементов конфига (похожего на реестр Windows), в том числе для динамически создаваемых узлов. (https://github.com/serbod/StatusMonitor ... igform.pas)
Еще у меня есть эксперимент по созданию аналога стандартного TDataSet, но где строка таблицы это объект (как TListItem для TListView). Ну и чтобы был визуальный редактор таблиц. И опять же, достаточно стандартного TPersistent и автоматического сохранения в dfm/lfm.
В транке появилась поддержка TCustomAttribute
Есть в транке, вроде бы можно пользоваться
https://lists.freepascal.org/pipermail/ ... 56329.html
https://wiki.freepascal.org/FPC_New_Fea ... attributes
https://lists.freepascal.org/pipermail/ ... 56329.html
https://wiki.freepascal.org/FPC_New_Fea ... attributes
