Типы коллекций простого бинарного кодирования - PullRequest
0 голосов
/ 22 февраля 2020

Мне нужно моделировать типы, которые включают коллекции. Например, я говорю, что у меня есть тип «владелец», который имеет идентификатор и список ресурсов, которыми он владеет.

Я бы предположил, что можно объявить что-то вроде

<composite name="owner">
  <type name="ownerId" primitiveType="uint16"/>
  <group name="resources" dimensionType="groupSizeEncoding">
    <type name="resource" primitiveType="uint16"/>
  </group>
</composite>

Однако, насколько как я вижу, group разрешено только внутри сообщения. Разрешает ли SBE использовать группы внутри типов?

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

С другой стороны, если кто-то может указать мне ресурсы, которые я могу использовать, чтобы узнать о SBE, это было бы прекрасно. Я уже просмотрел документацию по github, но я ищу что-то более глубокое. Поиск Google не указывал мне на учебник или книгу.

...