microsoft / yardl

Tooling for streaming instrument data
https://microsoft.github.io/yardl/
MIT License
29 stars 5 forks source link

Verify that protocols and records are not "empty" #141

Closed naegelejd closed 3 months ago

naegelejd commented 3 months ago

Protocol specifications with zero steps and Record specifications with zero fields both produce invalid C++ code.

I fixed by making both required:

  1. Protocols must include the sequence tag and at least one step
  2. Records must include the field tag and at least one field
  3. If a Record has a computedFields tag, it must also include at least one computed field

Closes #136