CMS 3D CMS Logo

Classes | Typedefs | Functions
edm::cfi Namespace Reference

Classes

struct  ClassFile
 
struct  NodeGuard
 
struct  Paths
 
struct  Typed
 
struct  Untyped
 

Typedefs

using CfiOptions = std::variant< cfi::Typed, cfi::ClassFile, cfi::Untyped >
 

Functions

std::pair< bool, NodeGuardneedToSwitchToTyped (std::string_view iNode, CfiOptions &iOpt) noexcept
 
void parameterMustBeTyped (CfiOptions &iOps) noexcept
 
void parameterMustBeTyped (CfiOptions &iOps, std::string_view iNode) noexcept
 
bool shouldWriteUntyped (CfiOptions const &iOps) noexcept
 

Typedef Documentation

◆ CfiOptions

Definition at line 133 of file ParameterDescriptionNode.h.

Function Documentation

◆ needToSwitchToTyped()

std::pair<bool, NodeGuard> edm::cfi::needToSwitchToTyped ( std::string_view  iNode,
CfiOptions iOpt 
)
inlinenoexcept

Definition at line 177 of file ParameterDescriptionNode.h.

Referenced by edm::ParameterDescriptionBase::writeCfi_().

178  {
179  if (std::holds_alternative<Untyped>(iOpt)) {
180  return std::pair(std::get<Untyped>(iOpt).needToSwitchToTyped(iNode), NodeGuard(iOpt));
181  } else if (std::holds_alternative<ClassFile>(iOpt)) {
182  std::get<ClassFile>(iOpt).pushNode(iNode);
183  }
184  return std::pair(false, NodeGuard(iOpt));
185  }
std::pair< bool, NodeGuard > needToSwitchToTyped(std::string_view iNode, CfiOptions &iOpt) noexcept

◆ parameterMustBeTyped() [1/2]

void edm::cfi::parameterMustBeTyped ( CfiOptions iOps)
inlinenoexcept

Definition at line 135 of file ParameterDescriptionNode.h.

Referenced by edm::ParameterSetDescription::writeCfi(), edm::IfExistsDescription::writeCfi_(), edm::ParameterSwitch< T >::writeCfi_(), edm::PluginDescription< T >::writeCfi_(), and edm::ParameterSetDescription::writeNode().

135  {
136  if (std::holds_alternative<cfi::ClassFile>(iOps)) {
137  std::get<cfi::ClassFile>(iOps).parameterMustBeTyped();
138  }
139  }
void parameterMustBeTyped(CfiOptions &iOps, std::string_view iNode) noexcept

◆ parameterMustBeTyped() [2/2]

void edm::cfi::parameterMustBeTyped ( CfiOptions iOps,
std::string_view  iNode 
)
inlinenoexcept

Definition at line 140 of file ParameterDescriptionNode.h.

References ztail::d.

140  {
141  if (std::holds_alternative<cfi::ClassFile>(iOps)) {
142  auto& d = std::get<cfi::ClassFile>(iOps);
143  d.pushNode(iNode);
144  d.parameterMustBeTyped();
145  d.popNode();
146  }
147  }
d
Definition: ztail.py:151

◆ shouldWriteUntyped()

bool edm::cfi::shouldWriteUntyped ( CfiOptions const &  iOps)
inlinenoexcept

Definition at line 148 of file ParameterDescriptionNode.h.

Referenced by edm::ParameterDescriptionBase::writeCfi_(), and edm::ConfigurationDescriptions::writeCfiForLabel().

148  {
149  return std::holds_alternative<cfi::Untyped>(iOps);
150  }