#include "CommonTools/Utils/interface/LazyConstructed.h"
Public Member Functions | |
LazyConstructed (Args const &... args) | |
WrappedClass & | value () |
Private Member Functions | |
void | evaluate () |
template<std::size_t... ArgIndices> | |
void | evaluateImpl (std::index_sequence< ArgIndices... >) |
Private Attributes | |
std::tuple< Args const &... > | args_ |
std::optional< WrappedClass > | object_ = std::nullopt |
Description: Wrapper around a class for lazy construction.
Usage: example: lazy SoA table auto object = makeLazy<edm::soa::EtaPhiTable>(trackCollection);
Notes: See similar class CommonTools/Utils/interface/LazyResult.h for implementation details.
Definition at line 28 of file LazyConstructed.h.
|
inline |
Definition at line 30 of file LazyConstructed.h.
|
inlineprivate |
Definition at line 40 of file LazyConstructed.h.
References LazyConstructed< WrappedClass, Args >::evaluateImpl().
Referenced by LazyConstructed< WrappedClass, Args >::value().
|
inlineprivate |
Definition at line 43 of file LazyConstructed.h.
References LazyConstructed< WrappedClass, Args >::args_, and LazyConstructed< WrappedClass, Args >::object_.
Referenced by LazyConstructed< WrappedClass, Args >::evaluate().
|
inline |
Definition at line 32 of file LazyConstructed.h.
References LazyConstructed< WrappedClass, Args >::evaluate(), and LazyConstructed< WrappedClass, Args >::object_.
Referenced by Types.int32::__nonzero__(), Types.uint32::__nonzero__(), Types.int64::__nonzero__(), Types.uint64::__nonzero__(), Types.double::__nonzero__(), Types.bool::__nonzero__(), Types.string::__nonzero__(), average.Average::average(), Types.string::configValue(), Types.FileInPath::configValue(), Mixins.UsingBlock::dumpPython(), Mixins.UsingBlock::insertInto(), Types.int32::insertInto(), Types.uint32::insertInto(), Types.int64::insertInto(), Types.uint64::insertInto(), Types.double::insertInto(), Types.bool::insertInto(), Types.string::insertInto(), Types.FileInPath::insertInto(), Types.vint32::insertInto(), Types.vuint32::insertInto(), Types.vint64::insertInto(), Types.vuint64::insertInto(), Types.vdouble::insertInto(), Types.vbool::insertInto(), and Types.vstring::insertInto().
|
private |
Definition at line 48 of file LazyConstructed.h.
Referenced by LazyConstructed< WrappedClass, Args >::evaluateImpl(), valtools.webpage::parseArgs(), and batchmanager.BatchManager::ParseOptions().
|
private |
Definition at line 47 of file LazyConstructed.h.
Referenced by LazyConstructed< WrappedClass, Args >::evaluateImpl(), and LazyConstructed< WrappedClass, Args >::value().