Lines Matching refs:has
70 bool has; member
73 optional() : has(false) {} in optional()
75 optional(U &&...u) : has(true), value(forward<U>(u)...) {} in optional()
77 optional(const optional &o) : has(o.has) { in optional()
78 if (has) new (&value) T(o.value); in optional()
80 optional(optional &&o) : has(o.has) { in optional()
81 if (has) new (&value) T(move(o.value)); in optional()
85 if (has) { in operator =()
86 if (o.has) in operator =()
90 } else if (o.has) { in operator =()
93 has = o.has; in operator =()
96 if (has) { in operator =()
97 if (o.has) in operator =()
101 } else if (o.has) { in operator =()
104 has = o.has; in operator =()
108 if (has) in ~optional()
112 explicit operator bool() const { return has; } in operator bool()