49 const int num_bytes = node->
end - node->
start;
82 if (*
start == terminator)
108 *parsed_until = text_end;
static int node_text_render(const struct ExpandoNode *node, const struct ExpandoRenderData *rdata, struct Buffer *buf, int max_cols, void *data, MuttFormatFlags flags)
Render a Text Node - Implements ExpandoNode::render() -.
struct ExpandoNode * node_new(void)
Create a new empty ExpandoNode.
struct ExpandoNode * node_text_new(const char *start, const char *end)
Create a new Text ExpandoNode.
struct ExpandoNode * node_text_parse(const char *str, const char *end, const char **parsed_until)
Extract a block of text.
static const char * skip_until_ch_or_end(const char *start, char terminator, const char *end)
Search for a terminator character.
Render Expandos using Data.
uint8_t MuttFormatFlags
Flags for expando_render(), e.g. MUTT_FORMAT_FORCESUBJ.
String manipulation buffer.
char * data
Pointer to data.
int(* render)(const struct ExpandoNode *node, const struct ExpandoRenderData *rdata, struct Buffer *buf, int max_cols, void *data, MuttFormatFlags flags)
const char * end
End of string data.
enum ExpandoNodeType type
Type of Node, e.g. ENT_EXPANDO.
const char * start
Start of string data.