Libmagicxx v10.0.3
A modern C++23 wrapper for libmagic — the library that powers the Unix file command.
Loading...
Searching...
No Matches
Recognition::Magic::MagicPrivate::LibmagicPairConverter Struct Reference

Extracts values from libmagic constant pairs. More...

Public Member Functions

constexpr LibmagicPairConverter (const LibmagicPairT &pair) noexcept
 Construct from a libmagic pair.
constexpr operator LibmagicValueNameT () const noexcept
 Convert to string name.
constexpr operator LibmagicValueT () const noexcept
 Convert to integer constant value.

Public Attributes

const LibmagicPairTm_pair

Detailed Description

Extracts values from libmagic constant pairs.

LibmagicPairConverter wraps a LibmagicPairT (pair of int constant and const char* name) and provides implicit conversions to either the integer value or string name.

Usage Example

// Extract integer constant for libmagic API call
// Extract string name for ToString/logging
// name == "MimeType"
static constexpr LibmagicFlagsT LIBMAGIC_FLAGS
Mapping from Magic::Flags bit positions to libmagic constants.
Definition magic.cpp:1992
std::string LibmagicValueNameT
Definition magic.cpp:1974
int LibmagicValueT
Definition magic.cpp:1973
constexpr LibmagicPairConverter(const LibmagicPairT &pair) noexcept
Construct from a libmagic pair.
Definition magic.cpp:2240
See also
LibmagicPairT
LIBMAGIC_FLAGS
LIBMAGIC_PARAMETERS

Constructor & Destructor Documentation

◆ LibmagicPairConverter()

Recognition::Magic::MagicPrivate::LibmagicPairConverter::LibmagicPairConverter ( const LibmagicPairT & pair)
inlineexplicitconstexprnoexcept

Construct from a libmagic pair.

Parameters
[in]pairReference to a (constant, name) pair.

Member Function Documentation

◆ operator LibmagicValueNameT()

Recognition::Magic::MagicPrivate::LibmagicPairConverter::operator LibmagicValueNameT ( ) const
inlineconstexprnoexcept

Convert to string name.

Returns
The human-readable name from the pair.

◆ operator LibmagicValueT()

Recognition::Magic::MagicPrivate::LibmagicPairConverter::operator LibmagicValueT ( ) const
inlineconstexprnoexcept

Convert to integer constant value.

Returns
The libmagic constant (e.g., MAGIC_MIME).

Member Data Documentation

◆ m_pair

const LibmagicPairT& Recognition::Magic::MagicPrivate::LibmagicPairConverter::m_pair

Reference to the wrapped pair


The documentation for this struct was generated from the following file: