Атрибуты свойств (TCustomAttribute)

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
alps
незнакомец
Сообщения: 8
Зарегистрирован: 14.03.2016 14:51:49

Атрибуты свойств (TCustomAttribute)

Сообщение alps »

Кто знает, тема http://wiki.freepascal.org/Property_attributes заглохла насовсем?
alps
незнакомец
Сообщения: 8
Зарегистрирован: 14.03.2016 14:51:49

Сообщение alps »

Отвечу сам себе.
Если верить тому что тут http://forum.lazarus.freepascal.org/index.php/topic,41935.msg292924.htm, то тема не то что бы заглохла, отцы-основатели не очень хотят добавлять эту фичу.
Хотя указано что работа завершена и ждет мержа в транк. https://foundation.freepascal.org/projects/project-3
Выкатили fixes_3_2 - в нем нет этой фичи...
Аватара пользователя
serbod
постоялец
Сообщения: 449
Зарегистрирован: 16.09.2016 10:03:02
Откуда: Минск
Контактная информация:

Сообщение serbod »

А зачем оно надо? Какие проблемы решает?
sts
энтузиаст
Сообщения: 519
Зарегистрирован: 04.04.2008 12:15:44
Откуда: Тольятти

Сообщение sts »

Эх, расширяемое RTTI, давняя мечта.
alps
незнакомец
Сообщения: 8
Зарегистрирован: 14.03.2016 14:51:49

Сообщение alps »

serbod писал(а):А зачем оно надо? Какие проблемы решает?


Например для более простой сериализации/десериализации объектов. Да множество применений.
Аватара пользователя
serbod
постоялец
Сообщения: 449
Зарегистрирован: 16.09.2016 10:03:02
Откуда: Минск
Контактная информация:

Сообщение serbod »

alps писал(а):Например для более простой сериализации/десериализации объектов.

Для этого достаточно обычного RTTI, а можно и совсем без него обойтись, даже проще получится. Да я сто раз так делал! =)

А какие еще применения? Я вот думал о метаданных, чтобы автоматически моделировать визуальные формы для произвольных опций в окне настроек программы. Но на деле обошелся обычным ini файлом, в котором описана структура элементов конфига (похожего на реестр Windows), в том числе для динамически создаваемых узлов. (https://github.com/serbod/StatusMonitor ... igform.pas)

Еще у меня есть эксперимент по созданию аналога стандартного TDataSet, но где строка таблицы это объект (как TListItem для TListView). Ну и чтобы был визуальный редактор таблиц. И опять же, достаточно стандартного TPersistent и автоматического сохранения в dfm/lfm.
alps
незнакомец
Сообщения: 8
Зарегистрирован: 14.03.2016 14:51:49

Сообщение alps »

В транке появилась поддержка TCustomAttribute
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Есть в транке, вроде бы можно пользоваться
https://lists.freepascal.org/pipermail/ ... 56329.html
https://wiki.freepascal.org/FPC_New_Fea ... attributes
Ответить