NeoMutt
2025-12-11-1039-g550ac6
Teaching an old dog new tricks
DOXYGEN
Toggle main menu visibility
Loading...
Searching...
No Matches
tags.h
Go to the documentation of this file.
1
25
26
#ifndef MUTT_EMAIL_TAGS_H
27
#define MUTT_EMAIL_TAGS_H
28
29
#include <stdbool.h>
30
#include "
mutt/lib.h
"
31
32
struct
EmailModuleData
;
33
40
struct
Tag
41
{
42
char
*
name
;
43
char
*
transformed
;
44
bool
hidden
;
45
STAILQ_ENTRY
(
Tag
) entries;
46
};
47
STAILQ_HEAD
(TagList,
Tag
);
48
49
void
tag_free
(
struct
Tag
**ptr);
50
struct
Tag
*
tag_new
(
void
);
51
52
void
driver_tags_free
(
struct
TagList *tl);
53
void
driver_tags_get
(
struct
TagList *tl,
struct
Buffer
*tags);
54
void
driver_tags_get_transformed
(
struct
TagList *tl,
struct
Buffer
*tags);
55
void
driver_tags_get_transformed_for
(
struct
TagList *tl,
const
char
*
name
,
struct
Buffer
*tags);
56
void
driver_tags_get_with_hidden
(
struct
TagList *tl,
struct
Buffer
*tags);
57
bool
driver_tags_replace
(
struct
TagList *tl,
const
char
*tags);
58
void
driver_tags_add
(
struct
TagList *tl,
char
*tag);
59
60
void
driver_tags_init
(
struct
EmailModuleData
*mod_data);
61
void
driver_tags_cleanup
(
struct
EmailModuleData
*mod_data);
62
63
#endif
/* MUTT_EMAIL_TAGS_H */
lib.h
Convenience wrapper for the library headers.
STAILQ_HEAD
#define STAILQ_HEAD(name, type)
Definition
queue.h:312
Buffer
String manipulation buffer.
Definition
buffer.h:36
EmailModuleData
Email private Module data.
Definition
module_data.h:32
Tag
LinkedList Tag Element.
Definition
tags.h:41
Tag::hidden
bool hidden
Tag should be hidden.
Definition
tags.h:44
Tag::transformed
char * transformed
Transformed name.
Definition
tags.h:43
Tag::name
char * name
Tag name.
Definition
tags.h:42
Tag::STAILQ_ENTRY
STAILQ_ENTRY(Tag) entries
Linked list.
driver_tags_init
void driver_tags_init(struct EmailModuleData *mod_data)
Initialize structures used for tags.
Definition
tags.c:235
driver_tags_replace
bool driver_tags_replace(struct TagList *tl, const char *tags)
Replace all tags.
Definition
tags.c:202
driver_tags_add
void driver_tags_add(struct TagList *tl, char *tag)
Add a tag to header.
Definition
tags.c:105
driver_tags_cleanup
void driver_tags_cleanup(struct EmailModuleData *mod_data)
Deinitialize structures used for tags.
Definition
tags.c:248
tag_new
struct Tag * tag_new(void)
Create a new Tag.
Definition
tags.c:62
driver_tags_get
void driver_tags_get(struct TagList *tl, struct Buffer *tags)
Get tags all tags separated by space.
Definition
tags.c:165
driver_tags_get_with_hidden
void driver_tags_get_with_hidden(struct TagList *tl, struct Buffer *tags)
Get all tags, also hidden ones, separated by space.
Definition
tags.c:175
driver_tags_free
void driver_tags_free(struct TagList *tl)
Free tags from a header.
Definition
tags.c:132
tag_free
void tag_free(struct Tag **ptr)
Free a Tag.
Definition
tags.c:46
driver_tags_get_transformed
void driver_tags_get_transformed(struct TagList *tl, struct Buffer *tags)
Get transformed tags separated by space.
Definition
tags.c:153
driver_tags_get_transformed_for
void driver_tags_get_transformed_for(struct TagList *tl, const char *name, struct Buffer *tags)
Get transformed tags for a tag name separated by space.
Definition
tags.c:188