Namespace all wpilibc functions/classes into "frc" namespace. (#311)

Base.h provides a backwards compatibility shim (enabled unless
NAMESPACED_WPILIB is defined) that does a "using namespace frc".
However, as some header files do not include Base.h, this may
be a breaking change in some corner cases (with an easy fix).

Fixes #218.
This commit is contained in:
Peter Johnson
2016-11-01 22:33:12 -07:00
committed by GitHub
parent 36ad45c07d
commit 59267da72b
318 changed files with 988 additions and 10 deletions

View File

@@ -56,6 +56,8 @@ using decay_t = typename decay<T>::type;
#endif
#endif
namespace frc {
// A struct to use as a deleter when a std::shared_ptr must wrap a raw pointer
// that is being deleted by someone else.
template <class T>
@@ -63,7 +65,12 @@ struct NullDeleter {
void operator()(T*) const noexcept {};
};
} // namespace frc
#include <atomic>
namespace frc {
// Use this for determining whether the default move constructor has been
// called on a containing object. This serves the purpose of allowing us to
// use the default move constructor of an object for moving all the data around
@@ -78,3 +85,10 @@ struct HasBeenMoved {
std::atomic<bool> moved{false};
operator bool() const { return moved; }
};
} // namespace frc
// For backwards compatibility
#ifndef NAMESPACED_WPILIB
using namespace frc; // NOLINT
#endif