|
asrt
Automated System Runtime Testing library
|
Compile-time typed stream schema. More...
#include <stream.hpp>
Public Member Functions | |
| ASRT_NODISCARD status | emit (Ts... args, callback< asrt_stream_done_cb > done_cb) |
Encode args in-place and send a DATA message using the underlying emit function. | |
| ASRT_NODISCARD status | emit_raw (uint8_t const *buf, callback< asrt_stream_done_cb > done_cb) |
| Emit from a pre-encoded buffer; used internally by stream_emit_sender. | |
| stream_schema & | operator= (stream_schema &&o) noexcept |
| stream_schema & | operator= (stream_schema const &)=delete |
| stream_schema (ref< asrt_stream_client > c, uint8_t id) | |
| stream_schema (ref< asrt_stream_client > client, uint8_t schema_id, callback< asrt_stream_done_cb > done_cb) | |
| XXX: error handling in constructor is bad. | |
| stream_schema (stream_schema &&o) noexcept | |
| stream_schema (stream_schema const &)=delete | |
Static Public Attributes | |
| static constexpr uint16_t | emit_size = ( strm_field_traits< Ts >::size + ... ) |
| static constexpr enum asrt_strm_field_type_e | fields [] = { strm_field_traits< Ts >::tag... } |
Compile-time typed stream schema.
Constructed by stream_define_sender after a successful DEFINE. Provides emit(args..., done_cb, done_ptr) which encodes field values into a fixed-size buffer and sends a DATA message.