|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
||||||||||||||||
Enumeration В Lotusscript24.04.2013, 16:23. Показов 18714. Ответов 27
Метки нет (Все метки)
Доброе время суток!
Продолжаю скромные попытки расширить возможности разработки на LS. На сей представляю на суд общественности прототип реализации enumeration. P.S. идея была взята отсюда .SpoilerTarget">Спойлер: Раскрывающийся Текст
.SpoilerTarget">Спойлер: Раскрывающийся Текст
1) Добавления абстрактных классов: "Контейнер элементов enum", "Элемент enum" 2) Элементы enum пересены в list 3) По замечанию Imike, инициализация всех элементов происходит в самом начале 4) Из предыдущего пункта следует, что теперь есть возможность итерировать по всем элементам enum .SpoilerTarget">Спойлер: Раскрывающийся Текст
0
|
||||||||||||||||
| 24.04.2013, 16:23 | |
|
Ответы с готовыми решениями:
27
Не поддерживается Enumeration Ошибка the sqldbtype enumeration value 31 is invalid System.Data.TypedTableBase<>.Where().ToArray() вадает “Collection was modified; enumeration operation might not execute” |
|
1 / 1 / 0
Регистрация: 07.12.2009
Сообщений: 1,197
|
|
| 26.04.2013, 12:35 | |
|
Скорее всего я чего не понимаю...
Смысл Enumeration в возможности передачи различного количества значений, например в одном случае передам 3 значения, в другом 33. Реализацию этого не увидел. Если говорить о классах вообще, то: Объект, содержащий в себе 3 объекта... - к чему эта статика? Разве что решение какой-то специфической задачи. Лучше уж список, содержащий разные объекты поведения. safetyType, который просто умирает зайдя в конструктор EnumerationObject... По моему, всё это скучно. Гораздо интереснее реализация фабрики объектов с помощью Execute и глобального списка; пример в OpenNTF.OpenDOM v2.0.
0
|
|
|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
|||||
| 26.04.2013, 21:48 | |||||
|
Я так понял,
Объекты разного поведения можно понасоздавать, унаследовавшись от EnumerationObject
0
|
|||||
|
1 / 1 / 0
Регистрация: 07.12.2009
Сообщений: 1,197
|
||||||||||||||||
| 28.04.2013, 18:56 | ||||||||||||||||
|
Enumeration
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Иллюстрация (т.к. используется Variant) на примере списка</div></div><div class="sp-body"><div class="sp-content">
Пример 1:
0
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
||
| 29.04.2013, 07:23 | ||
|
VladSh, при всем уважении, в чем отличие данной интерпретации Enumeration от обычного List?
Не увидел следующих моментов: -
0
|
||
|
1 / 1 / 0
Регистрация: 07.12.2009
Сообщений: 1,197
|
||||||
| 29.04.2013, 22:19 | ||||||
|
Darkhan
Из статьи: <!--shcode--><pre><code class=pas>type Cardsuit = (clubs, diamonds, hearts, spades);[/CODE] Из моего примера использования:
Ограниченность списка идентификаторов определяется программистом, в 1-м случае количеством значений, разделённых запятой, во 2-м - количеством add. Кстати add здесь даёт большую гибкость - можно добавлять данные в различных циклах, т.е. в одних случаях зависеть от граничного количества элементов, т.е. добавлять чётко определённое (For), в других - нет, т.е. определять логикой (Do). "считывание существующих(инициализированных) списков идентификаторов" Enumeration по определению не предусматривает, он есть лишь "перечисляемый тип". Для этого легко можно дописать метод, который будет принимать уже готовый список. Но смысл перечисляемого типа всё-таки не в этом, а в возможности инициализации значениями как в паскалевском коде выше, иначе это действительно просто List или что-то мегапередопиленное. Возникает вопрос об полной ограниченности, т.е. чтобы после инициализации объекта значениями невозможно было в него что-нибудь добавить, но, по моему, это какое-то странноватое требование. Как раз полезнее иметь динамику. Хотя может в каких-то случаях это и требуется (мне до сих пор не потребовалось ). Добавлено: и это решается - добавлением ещё одного класса, который не будет иметь методов add, и в который будет передаваться объект EnumerationList на этапе создания (New) либо в отдельный метод инициализации. Но опять же, смысла в этом не вижу.
0
|
||||||
|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
||
| 30.04.2013, 21:54 | ||
|
VladSh, главным требованием для данного решения являлось выполнение следующей задачи (имхо, эталонная миссия enumeration ):
0
|
||
|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
||
| 04.06.2013, 08:47 | ||
Lazy initialization решил оставить
0
|
||
|
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
|
|
| 04.02.2014, 09:18 | |
|
Добавил новую реализацию enumeration, см. в теле топика
0
|
|
| 04.02.2014, 09:18 | |
|
Lotusscript Проблема с LotusScript проверка на Lotusscript Webservice lotusscript Acl и Lotusscript Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|