state->lastchar = state->curpos + savelen;
}
+/**
+ * mutt_enter_state_new - Create a new EnterState
+ * @retval ptr New EnterState
+ */
+struct EnterState *mutt_enter_state_new(void)
+{
+ return mutt_mem_calloc(1, sizeof(struct EnterState));
+}
+
/**
* mutt_enter_string - Ask the user for a string
* @param buf Buffer to store the string
#define _MUTT_ENTER_STATE_H
#include <stddef.h>
-#include "mutt/mutt.h"
/**
* struct EnterState - Keep our place when entering a string
};
void mutt_enter_state_free(struct EnterState **esp);
-
-static inline struct EnterState *mutt_enter_state_new(void)
-{
- return mutt_mem_calloc(1, sizeof(struct EnterState));
-}
+struct EnterState *mutt_enter_state_new(void);
#endif /* _MUTT_ENTER_STATE_H */
*kpp = NULL;
}
+
+/**
+ * pgp_new_keyinfo - Create a new PgpKeyInfo
+ * @retval ptr New PgpKeyInfo
+ */
+struct PgpKeyInfo *pgp_new_keyinfo(void)
+{
+ return mutt_mem_calloc(1, sizeof(struct PgpKeyInfo));
+}
+
#include <stdbool.h>
#include <time.h>
-#include "mutt/mutt.h"
-
/**
* struct PgpUid - PGP User ID
struct PgpKeyInfo * pgp_remove_key(struct PgpKeyInfo * *klist, struct PgpKeyInfo * key);
-static inline struct PgpKeyInfo *pgp_new_keyinfo(void)
-{
- return mutt_mem_calloc(1, sizeof(struct PgpKeyInfo));
-}
+struct PgpKeyInfo *pgp_new_keyinfo(void);
#endif /* CRYPT_BACKEND_CLASSIC_PGP */
}
}
+/**
+ * mutt_pattern_new - Create a new Pattern
+ * @retval ptr New Pattern
+ */
+struct Pattern *mutt_pattern_new(void)
+{
+ return mutt_mem_calloc(1, sizeof(struct Pattern));
+}
+
struct Pattern *mutt_pattern_comp(/* const */ char *s, int flags, struct Buffer *err)
{
struct Pattern *curlist = NULL;
if (curlist->next)
{
/* A & B | C == (A & B) | C */
- tmp = new_pattern();
+ tmp = mutt_pattern_new();
tmp->op = MUTT_AND;
tmp->child = curlist;
mutt_pattern_free(&curlist);
return NULL;
}
- tmp = new_pattern();
+ tmp = mutt_pattern_new();
tmp->op = thread_op;
if (last)
last->next = tmp;
if (implicit && or)
{
/* A | B & C == (A | B) & C */
- tmp = new_pattern();
+ tmp = mutt_pattern_new();
tmp->op = MUTT_OR;
tmp->child = curlist;
curlist = tmp;
or = false;
}
- tmp = new_pattern();
+ tmp = mutt_pattern_new();
tmp->not = not;
tmp->alladdr = alladdr;
tmp->isalias = isalias;
}
if (curlist->next)
{
- tmp = new_pattern();
+ tmp = mutt_pattern_new();
tmp->op = or ? MUTT_OR : MUTT_AND;
tmp->child = curlist;
curlist = tmp;
#include <regex.h>
#include <stdbool.h>
#include <stddef.h>
-#include "mutt/mutt.h"
struct Address;
+struct Buffer;
struct Header;
struct Context;
int pers_from_one; /**< ~P */
};
-static inline struct Pattern *new_pattern(void)
-{
- return mutt_mem_calloc(1, sizeof(struct Pattern));
-}
-
+struct Pattern *mutt_pattern_new(void);
int mutt_pattern_exec(struct Pattern *pat, enum PatternExecFlag flags,
struct Context *ctx, struct Header *h, struct PatternCache *cache);
struct Pattern *mutt_pattern_comp(/* const */ char *s, int flags, struct Buffer *err);