24#ifndef MUTT_EXPANDO_NODE_EXPANDO_H
25#define MUTT_EXPANDO_NODE_EXPANDO_H
Define an Expando format string.
uint8_t ExpandoParserFlags
Flags for expando_parse(), e.g. EP_CONDITIONAL.
int node_expando_render(const struct ExpandoNode *node, const struct ExpandoRenderData *rdata, struct Buffer *buf, int max_cols, void *data, MuttFormatFlags flags)
Render an Expando Node - Implements ExpandoNode::render() -.
void node_expando_set_color(const struct ExpandoNode *node, int cid)
Set the colour for an Expando.
void node_expando_set_has_tree(const struct ExpandoNode *node, bool has_tree)
Set the has_tree flag for an Expando.
struct ExpandoNode * node_expando_new(const char *start, const char *end, struct ExpandoFormat *fmt, int did, int uid)
Create a new Expando ExpandoNode.
struct ExpandoNode * node_expando_parse_enclosure(const char *s, const char **parsed_until, int did, int uid, char terminator, struct ExpandoParseError *error)
Parse an enclosed Expando.
struct ExpandoNode * node_expando_parse(const char *s, const char **parsed_until, const struct ExpandoDefinition *defs, ExpandoParserFlags flags, struct ExpandoParseError *error)
Parse an Expando format string.
const char * skip_classic_expando(const char *s, const struct ExpandoDefinition *defs)
Skip over the text of an Expando.
Render Expandos using Data.
uint8_t MuttFormatFlags
Flags for expando_render(), e.g. MUTT_FORMAT_FORCESUBJ.
String manipulation buffer.
Definition of a format string.
int uid
Unique ID, e.g. ED_EMA_SIZE.
const char * end
End of string data.
int did
Domain ID, e.g. ED_EMAIL.
const char * start
Start of string data.
Buffer for parsing errors.
Private data for an Expando.
bool has_tree
Contains tree characters, used in $index_format's s.