10 template <
typename T,
typename CompleteTest,
typename Complete>
41 T deriveComplete(
const Complete &complete)
const
46 return complete(value());
49 Incomplete &completeSelf(
const Complete &complete)
51 return assign(deriveComplete(complete));
59 const T &value()
const
69 operator const T &()
const
82 return assign(other.value());
95 bool operator ==(
const Incomplete &other)
const
100 return other.value() == value();
103 bool operator ==(
const T &other)
const
108 return value() == other;
111 bool operator !=(
const Incomplete &other)
const
116 return other.value() != value();
119 bool operator !=(
const T &other)
const
124 return value() != other;
127 bool operator <(
const Incomplete &other)
const
130 return value() < other.value();
138 bool operator <(
const T &other)
const
141 return value() < other;
146 bool operator >(
const Incomplete &other)
const
148 return !(*
this == other) && !(*
this < other);
bool isComplete() const
Definition: Incomplete.h:35
Definition: Incomplete.h:11
Incomplete()
Definition: Incomplete.h:17