/*
- * Copyright 2014 Facebook, Inc.
+ * Copyright 2015 Facebook, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#error This file may only be included from folly/gen/Core.h
#endif
+#include <type_traits>
+#include <utility>
+
// Ignore shadowing warnings within this file, so includers can use -Wshadow.
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wshadow"
protected:
Operator() = default;
+ Operator(Operator&&) noexcept = default;
Operator(const Operator&) = default;
- Operator(Operator&&) = default;
+ Operator& operator=(Operator&&) noexcept = default;
+ Operator& operator=(const Operator&) = default;
};
/**
protected:
// To prevent slicing
GenImpl() = default;
- GenImpl(const GenImpl&) = default;
GenImpl(GenImpl&&) = default;
+ GenImpl(const GenImpl&) = default;
+ GenImpl& operator=(GenImpl&&) = default;
+ GenImpl& operator=(const GenImpl&) = default;
public:
typedef Value ValueType;
First first_;
Second second_;
public:
- Composed() {}
+ Composed() = default;
Composed(First first, Second second)
: first_(std::move(first))