Flox Package Database 1
CRUD Operations on Nix Package Metadata
Loading...
Searching...
No Matches
Namespaces | Macros
mixins.cc File Reference

State blobs for flox commands. More...

#include <filesystem>
#include <optional>
#include <string>
#include <string_view>
#include <utility>
#include <variant>
#include <argparse/argparse.hpp>
#include <nix/util.hh>
#include "flox/resolver/environment.hh"
#include "flox/resolver/lockfile.hh"
#include "flox/resolver/manifest-raw.hh"
#include "flox/resolver/manifest.hh"
#include "flox/resolver/mixins.hh"

Namespaces

namespace  flox
 Interfaces for use by flox.
 

Macros

#define ENV_MIXIN_THROW_IF_SET(member)
 Generate exception handling boilerplate for ‘EnvironmentMixin::init<MEMBER>’ functions.
 

Detailed Description

State blobs for flox commands.

Macro Definition Documentation

◆ ENV_MIXIN_THROW_IF_SET

#define ENV_MIXIN_THROW_IF_SET (   member)
Value:
if ( this->member.has_value() ) \
{ \
throw EnvironmentMixinException( "`" #member \
"' was already initialized" ); \
} \
if ( this->environment.has_value() ) \
{ \
throw EnvironmentMixinException( \
"`" #member "' cannot be initialized after `environment'" ); \
}

Generate exception handling boilerplate for ‘EnvironmentMixin::init<MEMBER>’ functions.