HEX
Server: Apache/2
System: Linux nexus-01 4.18.0-553.120.1.el8_10.x86_64 #1 SMP Mon Apr 20 18:04:27 EDT 2026 x86_64
User: aglcoke (1118)
PHP: 8.2.31
Disabled: mail,exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/include/dovecot/lang-filter-private.h
#ifndef LANG_FILTER_PRIVATE_H
#define LANG_FILTER_PRIVATE_H

#include "lang-filter.h"

#define LANG_FILTER_CLASSES_NR 6

struct lang_settings;

/*
 API that stemming providers (classes) must provide: The create()
 function is called to get an instance of a registered filter class.
 The filter() function is called with tokens for the specific filter.
 The destroy function is called to destroy an instance of a filter.

*/
struct lang_filter_vfuncs {
	int (*create)(const struct lang_settings *set,
		      struct event *event,
	              struct lang_filter **filter_r,
	              const char **error_r);
	int (*filter)(struct lang_filter *filter, const char **token,
		      const char **error_r);

	void (*destroy)(struct lang_filter *filter);
};

struct lang_filter {
	const char *class_name; /* name of the class this is based on */
	struct lang_filter_vfuncs v;
	struct lang_filter *parent;
	string_t *token;
	int refcount;
};

#endif