| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Watcher 25.10.2019 15:58
...то путаница в бОльшей степени состоит не в исчерпывающем наборе возможностей про "виды красок". А именно в семантике терминов, операторов. И с ходом времени я "отдебажил" именно то на чем происходит спотыкание и вычленил именно 2 ключевых момента:попытка в семантику и приоритетность параметров
^paint[string][to][what][when]
to - в какой цвет? по-умолчанию (dirty/tainted)
what - что красим? по-умолчанию (all) или выбранный цвет
when - когда применить? instant/defer, по умолчанию defer
тогда ходовые операции будут выражены так же коротко:
^paint[строка] - эквивалент ^taint[строка]
^paint[строка][as-is] - эквивалент ^taint[as-is][строка]
^paint[строка][as-is][dirty] - эквивалент ^untaint[строка]
^paint[строка][as-is][url][instant] - очень классно когда можно в уже смешанных
данных перекрашивать помеченные куски.
P.S.: В этом плане (а чего терять то Парсеру, кроме своих оков?) - я бы предложил еще десяток
кастомных красок, которые можно ввести на уровне @conf файла например.
Ведь наверняка это всё хранится как "дублированные строки", и наверное есть по меньшей мере
около байта на все виды красок? Стало быть десяточек-другой докинуть никакого оверхеда не принесет.legacy-операторы спокойно живут своей back-compatible жизнью, делая что делают