NAME
lowdown_doc_new
—
allocate a Markdown parser
LIBRARY
library “liblowdown”
SYNOPSIS
#include
<sys/queue.h>
#include <stdio.h>
#include <lowdown.h>
struct lowdown_doc *
lowdown_doc_new
(const struct
lowdown_opts *opts);
DESCRIPTION
Allocates a Markdown parser instance with configuration
opts. If opts is
NULL
, all values are assumed to be zero except for
the maximum parse depth, which is fixed at 128.
The returned instance may be used with multiple invocations of lowdown_doc_parse(3).
RETURN VALUES
Returns a pointer to the parser or NULL
on
memory allocation failure. The returned pointer must be freed with a call to
lowdown_doc_free(3).
Any pointer values in opts, such as those in
meta and metaovr, are copied
over, so they need not persist after being passed to
lowdown_doc_new
().
EXAMPLES
The following parses b if length bsz and throws away the result.
struct lowdown_doc *doc; struct lowdown_node *n; if ((doc = lowdown_doc_new(NULL)) == NULL) err(1, NULL); if ((n = lowdown_doc_parse(doc, NULL, b, bsz, NULL)) == NULL) err(1, NULL); lowdown_node_free(n); lowdown_doc_free(doc);