xref: /titanic_44/usr/src/lib/libsqlite/tool/opcodeDoc.awk (revision c5c4113dfcabb1eed3d4bdf7609de5170027a794)
1*c5c4113dSnw141292
2*c5c4113dSnw141292#pragma ident	"%Z%%M%	%I%	%E% SMI"
3*c5c4113dSnw141292
4*c5c4113dSnw141292#
5*c5c4113dSnw141292# Extract opcode documentation for sqliteVdbe.c and generate HTML
6*c5c4113dSnw141292#
7*c5c4113dSnw141292BEGIN {
8*c5c4113dSnw141292  print "<html><body bgcolor=white>"
9*c5c4113dSnw141292  print "<h1>SQLite Virtual Database Engine Opcodes</h1>"
10*c5c4113dSnw141292  print "<table>"
11*c5c4113dSnw141292}
12*c5c4113dSnw141292/ Opcode: /,/\*\// {
13*c5c4113dSnw141292  if( $2=="Opcode:" ){
14*c5c4113dSnw141292    printf "<tr><td>%s&nbsp;%s&nbsp;%s&nbsp;%s</td>\n<td>\n", $3, $4, $5, $6
15*c5c4113dSnw141292  }else if( $1=="*/" ){
16*c5c4113dSnw141292    printf "</td></tr>\n"
17*c5c4113dSnw141292  }else if( NF>1 ){
18*c5c4113dSnw141292    sub(/^ *\*\* /,"")
19*c5c4113dSnw141292    gsub(/</,"&lt;")
20*c5c4113dSnw141292    gsub(/&/,"&amp;")
21*c5c4113dSnw141292    print
22*c5c4113dSnw141292  }
23*c5c4113dSnw141292}
24*c5c4113dSnw141292END {
25*c5c4113dSnw141292  print "</table></body></html>"
26*c5c4113dSnw141292}
27