17 \h'-\w'\\$1\ 'u'\\$1\ \c
33 .TH tvec 3 "11 March 2024" "Straylight/Edgeware" "mLib utilities library"
35 tvec \- test vector framework
45 .B "#include <mLib/tvec.h>"
48 .B "union tvec_misc {"
51 .B " unsigned long u;"
64 .B "union tvec_regval {"
66 .B " unsigned long u;"
69 .B " struct { char *p; size_t sz; } text;"
70 .B " struct { unsigned char *p; size_t sz; } bytes;"
72 .B " unsigned char *p; size_t sz;"
78 .B "struct tvec_reg {"
80 .B " union tvec_regval v;"
82 .B "#define TVRF_LIVE ..."
85 .B "struct tvec_regdef {"
86 .B " const char *name;"
87 .B " const struct tvec_regty *ty;"
90 .B " union tvec_misc arg;"
92 .B "#define TVRF_OPT ..."
93 .B "#define TVRF_ID ..."
94 .B "#define TVEC_ENDREGS ..."
96 .B "struct tvec_state;"
99 .ta \w'\fBtypedef void tvec_testfn('u
100 .BI "typedef void tvec_testfn(const struct tvec_reg *" in ,
101 .BI " struct tvec_reg *" out ,
103 .B "struct tvec_test {"
104 .B " const char *name;"
105 .B " const struct tvec_regdef *regs;"
106 .B " const struct tvec_env *env;"
107 .B " tvec_testfn *fn;"
109 .B "#define TVEC_ENDTESTS ..."
112 .B "struct tvec_config {"
113 .B " const struct tvec_test *tests;"
114 .B " unsigned nrout, nreg;"
117 .B "struct tvec_output;"
119 .ta \w'\fBvoid tvec_begin('u
120 .BI "void tvec_begin(struct tvec_state *" tv_out ,
121 .BI " const struct tvec_config *" config ,
122 .BI " struct tvec_output *" o );
123 .BI "int tvec_end(struct tvec_state *" tv );
124 .BI "int tvec_read(struct tvec_state *" tv ", const char *" infile ", FILE *" fp );
126 .BI "extern struct tvec_output *tvec_humanoutput(FILE *" fp );
127 .BI "extern struct tvec_output *tvec_tapoutput(FILE *" fp );
128 .BI "extern struct tvec_output *tvec_dfltoutput(FILE *" fp );