• Home
  • Raw
  • Download

Lines Matching refs:Optional

148 class Optional;  variable
158 is_template_instantiation_of<typename std::decay<U>::type, Optional>;
161 class Optional
168 friend class Optional; variable
171 using self = Optional<U>;
192 constexpr Optional() {} in Optional() function
193 constexpr Optional(NulloptT) {} in Optional() function
195 Optional(const Optional& other) : base_flag(other.constructed()) { in Optional() function
200 Optional(Optional&& other) : base_flag(other.constructed()) { in Optional() function
210 Optional(const Optional<U>& other) : base_flag(other.constructed()) { in Optional() function
220 Optional(Optional<U>&& other) : base_flag(other.constructed()) { in Optional() function
227 Optional(const T& value) : base_flag(true) { new (&get()) T(value); } in Optional() function
229 Optional(T&& value) : base_flag(true) { new (&get()) T(std::move(value)); } in Optional() function
233 Optional(InplaceT, Args&&... args) : base_flag(true) { in Optional() function
241 Optional(InplaceT, std::initializer_list<U> il) : base_flag(true) { in Optional() function
246 Optional& operator=(const Optional& other) {
270 Optional& operator=(Optional&& other) {
292 Optional& operator=(const Optional<U>& other) {
314 Optional& operator=(Optional<U>&& other) {
340 Optional& operator=(U&& other) {
414 ~Optional() { in ~Optional()
465 return const_cast<T&>(const_cast<const Optional*>(this)->get()); in get()
473 Optional<typename std::decay<T>::type> makeOptional(T&& t) { in makeOptional()
474 return Optional<typename std::decay<T>::type>(std::forward<T>(t)); in makeOptional()
478 Optional<typename std::decay<T>::type> makeOptional(Args&&... args) { in makeOptional()
479 return Optional<typename std::decay<T>::type>(kInplace, in makeOptional()
484 bool operator==(const Optional<T>& l, const Optional<T>& r) {
488 bool operator==(const Optional<T>& l, NulloptT) {
492 bool operator==(NulloptT, const Optional<T>& r) {
496 bool operator==(const Optional<T>& l, const T& r) {
500 bool operator==(const T& l, const Optional<T>& r) {
505 bool operator!=(const Optional<T>& l, const Optional<T>& r) {
509 bool operator!=(const Optional<T>& l, NulloptT) {
513 bool operator!=(NulloptT, const Optional<T>& r) {
517 bool operator!=(const Optional<T>& l, const T& r) {
521 bool operator!=(const T& l, const Optional<T>& r) {
526 bool operator<(const Optional<T>& l, const Optional<T>& r) {
530 bool operator<(const Optional<T>&, NulloptT) {
534 bool operator<(NulloptT, const Optional<T>& r) {
538 bool operator<(const Optional<T>& l, const T& r) {
542 bool operator<(const T& l, const Optional<T>& r) {