Filter out doc comments in source sections
In a piece of documented code such as:
```
//! @struct buffer
//! A buffer for holding some data.
//! This is just an example so don't read into it too much.
struct buffer
{
//! @member data
//! Contents of this buffer.
char data[BUFFER_MAX_LENGTH];
//! @member length
//! Length of the buffer in bytes.
uint8_t length;
};
```
the information for members `data` and `length` are documented by their
@member tags.
Prior to this commit, these sections would "appear twice" in generated
documentation, once in plain HTML generated form the @member tags and
once again as raw source code when the struct body was printed.
This commit changes print_section to filter out doc lines as a means to
prevent this issue.
Make xalloc less "clever"
Rename COPYING -> LICENSE
Fix spelling error in README
Add braces around all control statements
Add HTML files to the 'clean' target
Add cdoc documentation for constructs in cdoc.c
Add ability to parse docs in declaration bodies
Declarations (struct, union, etc.) may now contain doc-strings in their
bodies.
Example:
//! @struct foo
//! This is documentation for foo.
struct foo
{
//! @member
//! And this is documentation for a member within the body of
//! the declaration of foo.
int bar;
};
Replace assert statements with conditional checks
Assert statements were replaced with conditional checks + a call to
errorf.
With these changes in place pedantic error checking will occur in both
debug and release builds.
Remove global file pointer
Creating a C Documentation Generator - Part 6 (release v0.1)
Creating a C Documentation Generator - Part 5
Replace a realloc call with xalloc