cJSON: примеры применения опций

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Основной тред
Ответить
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3284
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 48 раз
Контактная информация:

cJSON: примеры применения опций

Сообщение Дед Пахом »

В недавнем обновлении появилась возможность объявления общих правил для полей структуры, вот как это может быть использовано:

Код: Выделить всё

[
  {"name":"*", "EmptyString":"ignore", "Format":"@s20"}, 
  {"name": ["Expired", "Printed"], "IsBool":true, "IgnoreFalse":true},
  ["name": ["Address1", "Phone1", "ExpiredDate"], "EmptyString":"null"}, 
  ["name": ["StartDate", "ExpiredDate"], "Format":"@d10-"}, 
  {"name": "Printed", "IgnoreFalse":false}
]
Здесь говорится:
  • Игнорировать пустые строки для всех полей, кроме "Address1", "Phone1", "ExpiredDate".
  • Поля "Expired", "Printed" булевы.
  • Поле "Expired" не выводить если false.
  • Все строки в формате @s20, кроме "StartDate", "ExpiredDate".
С уважением, ДП
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3284
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 48 раз
Контактная информация:

cJSON: примеры применения опций

Сообщение Дед Пахом »

Как видно из примера, одно и то же поле может быть использовано в разных наборах правил. Приоритет правил: наивысший у именованного (того, где "name":"поле"), затем затем общие (в обратном порядке появления), затем правила по умолчанию ("name": "*").
С уважением, ДП
Ответить