6#ifndef PRISM_OPTIONS_HPP
7#define PRISM_OPTIONS_HPP
9#include "prism/compiler/cplusplus.hpp"
The options that can be passed to parsing.
struct pm_options_t pm_options_t
The options that can be passed to the parser.
Definition options.h:30
PRISM_NODISCARD PRISM_EXPORTED_FUNCTION pm_options_t * pm_options_new(void)
Allocate a new options struct.
PRISM_EXPORTED_FUNCTION void pm_options_free(pm_options_t *options) PRISM_NONNULL(1)
Free both the held memory of the given options struct and the struct itself.
std::unique_ptr< pm_options_t, options_deleter > unique_options
An owned set of options.
Definition options.hpp:28
unique_options make_options() noexcept
Allocate a new set of options with every option at its default.
Definition options.hpp:37
Frees options with pm_options_free.
Definition options.hpp:18
void operator()(pm_options_t *options) const noexcept
Free the given options.
Definition options.hpp:24