Libmagicxx v10.0.3
A modern C++23 wrapper for libmagic — the library that powers the Unix file command.
Loading...
Searching...
No Matches

Flag modification methods. More...

Collaboration diagram for Flag Modification:

Functions

void Recognition::Magic::MagicPrivate::SetFlags (FlagsMaskT flags_mask)
 Set new flags for the instance (throwing version).
bool Recognition::Magic::MagicPrivate::SetFlags (FlagsMaskT flags_mask, const std::nothrow_t &tag) noexcept
 Set new flags for the instance (noexcept version).
void Recognition::Magic::MagicPrivate::SetFlags (const FlagsContainerT &flags_container)
 Set new flags from container (throwing version).
bool Recognition::Magic::MagicPrivate::SetFlags (const FlagsContainerT &flags_container, const std::nothrow_t &tag) noexcept
 Set new flags from container (noexcept version).

Detailed Description

Flag modification methods.

Methods for changing configuration flags after opening.

Function Documentation

◆ SetFlags() [1/4]

void Recognition::Magic::MagicPrivate::SetFlags ( const FlagsContainerT & flags_container)
inline

Set new flags from container (throwing version).

Convenience overload accepting a container of individual Flags. Converts to bitmask and delegates to SetFlags(FlagsMaskT).

Parameters
[in]flags_containerContainer (vector) of Flags enum values.
Exceptions
MagicIsClosedIf instance is not open.
MagicSetFlagsErrorIf magic_setflags() fails.
See also
Magic::SetFlags(const FlagsContainerT&)

◆ SetFlags() [2/4]

bool Recognition::Magic::MagicPrivate::SetFlags ( const FlagsContainerT & flags_container,
const std::nothrow_t & tag )
inlinenodiscardnoexcept

Set new flags from container (noexcept version).

Non-throwing convenience overload accepting a container of Flags.

Parameters
[in]flags_containerContainer (vector) of Flags enum values.
[in]tagPass std::nothrow to select this overload.
Returns
true on success, false on failure.
See also
Magic::SetFlags(const FlagsContainerT&, const std::nothrow_t&)

◆ SetFlags() [3/4]

void Recognition::Magic::MagicPrivate::SetFlags ( FlagsMaskT flags_mask)
inline

Set new flags for the instance (throwing version).

Changes the configuration flags for this instance by calling magic_setflags(). This affects how subsequent file identifications are performed.

Parameters
[in]flags_maskNew configuration flags as a bitmask.
Exceptions
MagicIsClosedIf instance is not open.
MagicSetFlagsErrorIf magic_setflags() fails.
libmagic Call
Detail::magic_setflags(m_cookie.get(), FlagsConverter(flags_mask));
CookieT m_cookie
Definition magic.cpp:1920
Converter between C++ flag types and libmagic flag values.
Definition magic.cpp:2105
Note
Updates internal m_flags_mask on success.
See also
Magic::SetFlags(FlagsMaskT)
GetFlags()

◆ SetFlags() [4/4]

bool Recognition::Magic::MagicPrivate::SetFlags ( FlagsMaskT flags_mask,
const std::nothrow_t & tag )
inlinenodiscardnoexcept

Set new flags for the instance (noexcept version).

Non-throwing variant that returns success/failure status.

Parameters
[in]flags_maskNew configuration flags as a bitmask.
[in]tagPass std::nothrow to select this overload.
Returns
true on success, false if closed or setflags fails.
See also
Magic::SetFlags(FlagsMaskT, const std::nothrow_t&)
GetFlags()