43 LazyEvaluate() : m_Metadata(), m_Field(
nullptr), m_Ok(
false) {}
45 LazyEvaluate(
const M& metadata) : m_Metadata(metadata), m_Field(
nullptr), m_Ok(
true) {}
47 : m_Metadata(pedigree_std::move(metadata)), m_Field(
nullptr), m_Ok(
true) {}
49 LazyEvaluate(T* value) : m_Metadata(), m_Field(value), m_Ok(
true) {}
50 LazyEvaluate(T* value,
const M& metadata) : m_Metadata(metadata), m_Field(value), m_Ok(
true) {}
52 : m_Metadata(pedigree_std::move(metadata)), m_Field(value), m_Ok(
true) {}
58 return m_Ok && (m_Field !=
nullptr);
72 m_Field = create(m_Metadata);
86 operator bool()
const {