ufo_data/libsoldout/renderers.h
Richard Geldreich bd057535a0 modified
2023-02-20 17:59:41 -05:00

58 lines
1.8 KiB
C

/* renderers.h - example markdown renderers */
/*
* Copyright (c) 2009, Natacha Porté
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#pragma once
#ifndef MARKDOWN_RENDERERS_H
#define MARKDOWN_RENDERERS_H
#include "markdown.h"
/*****************************
* EXPORTED HELPER FUNCTIONS *
*****************************/
/* lus_attr_escape • copy the buffer entity-escaping '<', '>', '&' and '"' */
void
lus_attr_escape(struct buf *ob, const char *src, size_t size);
/* lus_body_escape • copy the buffer entity-escaping '<', '>' and '&' */
void
lus_body_escape(struct buf *ob, const char *src, size_t size);
/***********************
* RENDERER STRUCTURES *
***********************/
/* original markdown renderers */
extern const struct mkd_renderer mkd_html; /* HTML 4 renderer */
extern const struct mkd_renderer mkd_xhtml; /* XHTML 1.0 renderer */
/* renderers with some discount extensions */
extern const struct mkd_renderer discount_html;
extern const struct mkd_renderer discount_xhtml;
/* renderers with Natasha's own extensions */
extern const struct mkd_renderer nat_html;
extern const struct mkd_renderer nat_xhtml;
#endif /* ndef MARKDOWN_RENDERERS_H */