Используя YAML отмечает для обозначения типов

Я не вполне понимаю, как использовать специализированные теги YAML и возможно, потому что мое желаемое использование их является чисто неправильным. Я использую YAML для конфигурационного файла и надеялся использовать теги для предоставления моему загрузчику конфигурации подсказку относительно того, какой тип данных это должно проанализировать данные в - специализированные типы данных.

Я также использую libyaml с C.

Таким образом, я пытаюсь сделать что-то как...

shapes:  
  square: "0,4,8,16"  
  circle: "5,10"  

В моем приложении я хотел бы использовать теги в качестве подсказок, таким образом, я могу загрузить значения квадрата в мою квадратную структуру данных, и значения круга в мою круговую структуру данных (эти значения ничего не означают в этом примере).

Таким образом, я в настоящее время делаю:

shapes:  
  square: !square "0,4,8,16"  
  circle: !circle "5,10"  

Libyaml обеспечит тег"! квадрат", когда я передаюсь скаляр "0,4,8,16". Действительно ли это допустимо для использования этого тега для предоставления моему загрузчику подсказку того, как обработать скаляр?

Так как это действительно работает на меня, мне более любопытно знать если его надлежащее. И в противном случае как я пошел бы о создании этого более надлежащего.

Спасибо.

7
задан dreftymac 17 February 2019 в 17:32
поделиться