%{
#include <stddef.h>
#include "conf-parser.h"
#include "journald.h"
%}
struct ConfigPerfItem;
%null_strings
%language=ANSI-C
%define slot-name section_and_lvalue
%define hash-function-name journald_gperf_hash
%define lookup-function-name journald_gperf_lookup
%readonly-tables
%omit-struct-type
%struct-type
%includes
%%
Journal.RateLimitInterval,  config_parse_usec,      0, offsetof(Server, rate_limit_interval)
Journal.RateLimitBurst,     config_parse_unsigned,  0, offsetof(Server, rate_limit_burst)
Journal.Compress,           config_parse_bool,      0, offsetof(Server, compress)
Journal.SystemMaxUse,       config_parse_bytes_off, 0, offsetof(Server, system_metrics.max_use)
Journal.SystemMaxFileSize,  config_parse_bytes_off, 0, offsetof(Server, system_metrics.max_size)
Journal.SystemMinFileSize,  config_parse_bytes_off, 0, offsetof(Server, system_metrics.min_size)
Journal.SystemKeepFree,     config_parse_bytes_off, 0, offsetof(Server, system_metrics.keep_free)
Journal.RuntimeMaxUse,      config_parse_bytes_off, 0, offsetof(Server, runtime_metrics.max_use)
Journal.RuntimeMaxFileSize, config_parse_bytes_off, 0, offsetof(Server, runtime_metrics.max_size)
Journal.RuntimeMinFileSize, config_parse_bytes_off, 0, offsetof(Server, runtime_metrics.min_size)
Journal.RuntimeKeepFree,    config_parse_bytes_off, 0, offsetof(Server, runtime_metrics.keep_free)
Journal.ForwardToSyslog,    config_parse_bool,      0, offsetof(Server, forward_to_syslog)
Journal.ForwardToKMsg,      config_parse_bool,      0, offsetof(Server, forward_to_kmsg)
Journal.ForwardToConsole,   config_parse_bool,      0, offsetof(Server, forward_to_console)
Journal.ImportKernel,       config_parse_bool,      0, offsetof(Server, import_proc_kmsg)