127b27ec6Sopenharmony_cigen_manual - a program for automatic generation of manual from source code
227b27ec6Sopenharmony_ci==========================================================================
327b27ec6Sopenharmony_ci
427b27ec6Sopenharmony_ci#### Introduction
527b27ec6Sopenharmony_ci
627b27ec6Sopenharmony_ciThis simple C++ program generates a single-page HTML manual from `lz4.h`.
727b27ec6Sopenharmony_ci
827b27ec6Sopenharmony_ciThe format of recognized comment blocks is following:
927b27ec6Sopenharmony_ci- comments of type `/*!` mean: this is a function declaration; switch comments with declarations
1027b27ec6Sopenharmony_ci- comments of type `/**` and `/*-` mean: this is a comment; use a `<H2>` header for the first line
1127b27ec6Sopenharmony_ci- comments of type `/*=` and `/**=` mean: use a `<H3>` header and show also all functions until first empty line
1227b27ec6Sopenharmony_ci- comments of type `/*X` where `X` is different from above-mentioned are ignored
1327b27ec6Sopenharmony_ci
1427b27ec6Sopenharmony_ciMoreover:
1527b27ec6Sopenharmony_ci- `LZ4LIB_API` is removed to improve readability
1627b27ec6Sopenharmony_ci- `typedef` are detected and included even if uncommented
1727b27ec6Sopenharmony_ci- comments of type `/**<` and `/*!<` are detected and only function declaration is highlighted (bold)
1827b27ec6Sopenharmony_ci
1927b27ec6Sopenharmony_ci
2027b27ec6Sopenharmony_ci#### Usage
2127b27ec6Sopenharmony_ci
2227b27ec6Sopenharmony_ciThe program requires 3 parameters:
2327b27ec6Sopenharmony_ci```
2427b27ec6Sopenharmony_cigen_manual [lz4_version] [input_file] [output_html]
2527b27ec6Sopenharmony_ci```
2627b27ec6Sopenharmony_ci
2727b27ec6Sopenharmony_ciTo compile program and generate lz4 manual we have used:
2827b27ec6Sopenharmony_ci```
2927b27ec6Sopenharmony_cimake
3027b27ec6Sopenharmony_ci./gen_manual.exe 1.7.3 ../../lib/lz4.h lz4_manual.html
3127b27ec6Sopenharmony_ci```
32