void mutt_addrlist_clear(struct AddressList *al)
Unlink and free all Address in an AddressList.
int mutt_addrlist_parse2(struct AddressList *al, const char *s)
Parse a list of email addresses.
int mutt_addrlist_to_intl(struct AddressList *al, char **err)
Convert an Address list to Punycode.
int grouplist_add_regex(struct GroupList *gl, const char *str, uint16_t flags, struct Buffer *err)
Add matching Addresses to a GroupList.
int groups_remove_addrlist(struct HashTable *groups, struct GroupList *gl, struct AddressList *al)
Remove an AddressList from a GroupList.
void groups_remove_grouplist(struct HashTable *groups, struct GroupList *gl)
Clear a GroupList.
int groups_remove_regex(struct HashTable *groups, struct GroupList *gl, const char *str)
Remove matching addresses from a GroupList.
struct Group * groups_get_group(struct HashTable *groups, const char *name)
Get a Group by its name.
void grouplist_add_addrlist(struct GroupList *gl, struct AddressList *al)
Add Address list to a GroupList.
void grouplist_add_group(struct GroupList *gl, struct Group *g)
Add a Group to a GroupList.
void grouplist_destroy(struct GroupList *gl)
Free a GroupList.
int buf_printf(struct Buffer *buf, const char *fmt,...)
Format a string overwriting a Buffer.
size_t buf_strcpy(struct Buffer *buf, const char *s)
Copy a string into a Buffer.
static const char * buf_string(const struct Buffer *buf)
Convert a buffer to a const char * "string".
CommandResult
Error codes for command_t parse functions.
@ MUTT_CMD_SUCCESS
Success: Command worked.
@ MUTT_CMD_ERROR
Error: Can't help the user.
@ MUTT_CMD_WARNING
Warning: Help given to the user.
Convenience wrapper for the core headers.
int parse_grouplist(struct GroupList *gl, struct Buffer *token, struct Buffer *line, struct Buffer *err, struct HashTable *groups)
Parse a group context.
Parse Group/Lists Commands.
GroupState
Type of email address group.
@ GS_RX
Entry is a regular expression.
@ GS_NONE
Group is missing an argument.
@ GS_ADDR
Entry is an address.
Email private Module data.
enum CommandResult parse_subscribe(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'subscribe' command - Implements Command::parse() -.
enum CommandResult parse_unlists(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'unlists' command - Implements Command::parse() -.
enum CommandResult parse_lists(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'lists' command - Implements Command::parse() -.
enum CommandResult parse_group(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'group' and 'ungroup' commands - Implements Command::parse() -.
enum CommandResult parse_unsubscribe(const struct Command *cmd, struct Buffer *line, const struct ParseContext *pc, struct ParseError *pe)
Parse the 'unsubscribe' command - Implements Command::parse() -.
void mutt_hash_free(struct HashTable **ptr)
Free a hash table.
#define FREE(x)
Free memory and set the pointer to NULL.
@ MODULE_ID_EMAIL
ModuleEmail, Email code
Convenience wrapper for the library headers.
int mutt_regexlist_add(struct RegexList *rl, const char *str, uint16_t flags, struct Buffer *err)
Compile a regex string and add it to a list.
int mutt_regexlist_remove(struct RegexList *rl, const char *str)
Remove a Regex from a list.
bool mutt_istr_equal(const char *a, const char *b)
Compare two strings, ignoring case.
bool mutt_str_equal(const char *a, const char *b)
Compare two strings.
void * neomutt_get_module_data(struct NeoMutt *n, enum ModuleId id)
Get the private data for a Module.
struct Buffer * buf_pool_get(void)
Get a Buffer from the pool.
void buf_pool_release(struct Buffer **ptr)
Return a Buffer to the pool.
#define STAILQ_HEAD_INITIALIZER(head)
#define TAILQ_HEAD_INITIALIZER(head)
#define TAILQ_EMPTY(head)
String manipulation buffer.
char * data
Pointer to data.
const char * name
Name of the Command.
enum CommandId id
ID of the Command.
Email private Module data.
struct RegexList unsubscribed
Regexes to exclude false matches in subscribed.
struct RegexList subscribed
Regexes to match subscribed mailing lists.
struct RegexList unmail
Regexes to exclude false matches in mail.
struct HashTable * auto_subscribe_cache
Hash Table: "mailto:" (no value)
struct RegexList mail
Regexes to match mailing lists.
Container for Accounts, Notifications.
struct HashTable * groups
Hash Table: "group-name" -> Group.
Context for config parsing (history/backtrace)
Detailed error information from config parsing.
struct Buffer * message
Error message.