Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
absl::flags_internal::FlagRegistry Class Reference

Public Member Functions

CommandLineFlagFindFlag (absl::string_view name)
 
CommandLineFlagFindFlag (absl::string_view name)
 
 FlagRegistry ()=default
 
 FlagRegistry ()=default
 
void Lock () ABSL_EXCLUSIVE_LOCK_FUNCTION(lock_)
 
void Lock () ABSL_EXCLUSIVE_LOCK_FUNCTION(lock_)
 
void RegisterFlag (CommandLineFlag &flag, const char *filename)
 
void RegisterFlag (CommandLineFlag &flag, const char *filename)
 
void Unlock () ABSL_UNLOCK_FUNCTION(lock_)
 
void Unlock () ABSL_UNLOCK_FUNCTION(lock_)
 
 ~FlagRegistry ()=default
 
 ~FlagRegistry ()=default
 

Static Public Member Functions

static FlagRegistryGlobalRegistry ()
 
static FlagRegistryGlobalRegistry ()
 

Private Types

using FlagConstIterator = FlagMap::const_iterator
 
using FlagConstIterator = FlagMap::const_iterator
 
using FlagIterator = FlagMap::iterator
 
using FlagIterator = FlagMap::iterator
 
using FlagMap = std::map< absl::string_view, CommandLineFlag * >
 
using FlagMap = absl::flat_hash_map< absl::string_view, CommandLineFlag * >
 

Private Member Functions

 FlagRegistry (const FlagRegistry &)
 
 FlagRegistry (const FlagRegistry &)
 
FlagRegistryoperator= (const FlagRegistry &)
 
FlagRegistryoperator= (const FlagRegistry &)
 

Private Attributes

std::atomic< boolfinalized_flags_ {false}
 
FlagMap flags_
 
std::vector< CommandLineFlag * > flat_flags_
 
absl::Mutex lock_
 

Friends

void FinalizeRegistry ()
 
void FinalizeRegistry ()
 
class flags_internal::FlagSaverImpl
 
void ForEachFlag (std::function< void(CommandLineFlag &)> visitor)
 
void ForEachFlag (std::function< void(CommandLineFlag &)> visitor)
 

Detailed Description

Definition at line 47 of file abseil-cpp/absl/flags/reflection.cc.

Member Typedef Documentation

◆ FlagConstIterator [1/2]

using absl::flags_internal::FlagRegistry::FlagConstIterator = FlagMap::const_iterator
private

Definition at line 73 of file abseil-cpp/absl/flags/reflection.cc.

◆ FlagConstIterator [2/2]

using absl::flags_internal::FlagRegistry::FlagConstIterator = FlagMap::const_iterator
private

◆ FlagIterator [1/2]

◆ FlagIterator [2/2]

Definition at line 72 of file abseil-cpp/absl/flags/reflection.cc.

◆ FlagMap [1/2]

◆ FlagMap [2/2]

Definition at line 71 of file abseil-cpp/absl/flags/reflection.cc.

Constructor & Destructor Documentation

◆ FlagRegistry() [1/4]

absl::flags_internal::FlagRegistry::FlagRegistry ( )
default

◆ ~FlagRegistry() [1/2]

absl::flags_internal::FlagRegistry::~FlagRegistry ( )
default

◆ FlagRegistry() [2/4]

absl::flags_internal::FlagRegistry::FlagRegistry ( const FlagRegistry )
private

◆ FlagRegistry() [3/4]

absl::flags_internal::FlagRegistry::FlagRegistry ( )
default

◆ ~FlagRegistry() [2/2]

absl::flags_internal::FlagRegistry::~FlagRegistry ( )
default

◆ FlagRegistry() [4/4]

absl::flags_internal::FlagRegistry::FlagRegistry ( const FlagRegistry )
private

Member Function Documentation

◆ FindFlag() [1/2]

CommandLineFlag * absl::flags_internal::FlagRegistry::FindFlag ( absl::string_view  name)

Definition at line 98 of file abseil-cpp/absl/flags/reflection.cc.

◆ FindFlag() [2/2]

CommandLineFlag* absl::flags_internal::FlagRegistry::FindFlag ( absl::string_view  name)

◆ GlobalRegistry() [1/2]

FlagRegistry & absl::flags_internal::FlagRegistry::GlobalRegistry ( )
static

Definition at line 171 of file abseil-cpp/absl/flags/reflection.cc.

◆ GlobalRegistry() [2/2]

static FlagRegistry& absl::flags_internal::FlagRegistry::GlobalRegistry ( )
static

◆ Lock() [1/2]

void absl::flags_internal::FlagRegistry::Lock ( )
inline

◆ Lock() [2/2]

void absl::flags_internal::FlagRegistry::Lock ( )
inline

Definition at line 55 of file abseil-cpp/absl/flags/reflection.cc.

◆ operator=() [1/2]

FlagRegistry& absl::flags_internal::FlagRegistry::operator= ( const FlagRegistry )
private

◆ operator=() [2/2]

FlagRegistry& absl::flags_internal::FlagRegistry::operator= ( const FlagRegistry )
private

◆ RegisterFlag() [1/2]

void absl::flags_internal::FlagRegistry::RegisterFlag ( CommandLineFlag flag,
const char *  filename 
)

Definition at line 113 of file abseil-cpp/absl/flags/reflection.cc.

◆ RegisterFlag() [2/2]

void absl::flags_internal::FlagRegistry::RegisterFlag ( CommandLineFlag flag,
const char *  filename 
)

◆ Unlock() [1/2]

void absl::flags_internal::FlagRegistry::Unlock ( )
inline

Definition at line 56 of file abseil-cpp/absl/flags/reflection.cc.

◆ Unlock() [2/2]

void absl::flags_internal::FlagRegistry::Unlock ( )
inline

Friends And Related Function Documentation

◆ FinalizeRegistry [1/2]

void FinalizeRegistry ( )
friend

Definition at line 196 of file abseil-cpp/absl/flags/reflection.cc.

◆ FinalizeRegistry [2/2]

void FinalizeRegistry ( )
friend

Definition at line 196 of file abseil-cpp/absl/flags/reflection.cc.

◆ flags_internal::FlagSaverImpl

Definition at line 65 of file abseil-cpp/absl/flags/reflection.cc.

◆ ForEachFlag [1/2]

void ForEachFlag ( std::function< void(CommandLineFlag &)>  visitor)
friend

Definition at line 178 of file abseil-cpp/absl/flags/reflection.cc.

◆ ForEachFlag [2/2]

void ForEachFlag ( std::function< void(CommandLineFlag &)>  visitor)
friend

Definition at line 178 of file abseil-cpp/absl/flags/reflection.cc.

Member Data Documentation

◆ finalized_flags_

std::atomic< bool > absl::flags_internal::FlagRegistry::finalized_flags_ {false}
private

Definition at line 76 of file abseil-cpp/absl/flags/reflection.cc.

◆ flags_

FlagMap absl::flags_internal::FlagRegistry::flags_
private

Definition at line 74 of file abseil-cpp/absl/flags/reflection.cc.

◆ flat_flags_

std::vector< CommandLineFlag * > absl::flags_internal::FlagRegistry::flat_flags_
private

Definition at line 75 of file abseil-cpp/absl/flags/reflection.cc.

◆ lock_

absl::Mutex absl::flags_internal::FlagRegistry::lock_
private

Definition at line 78 of file abseil-cpp/absl/flags/reflection.cc.


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


grpc
Author(s):
autogenerated on Fri May 16 2025 03:02:51