Move entirety of llvm namespace to wpi namespace.

During shared library loading, a different libLLVM can be pulled in, causing
llvm symbols from dependent libraries to resolve to that library instead of
this one. This has been seen in the wild with the Mesa OpenGL implementation
in JavaFX applications (see wpilibsuite/shuffleboard#361).

This is clearly a very breaking change. For some level of backwards
compatibility, a namespace alias from llvm to wpi is performed in the "llvm"
headers.  Unfortunately, forward declarations of llvm classes will still break,
but compilers seem to generate clear error messages in those cases
("namespace alias 'llvm' not allowed here, assuming 'wpi'").

This change also moves all the wpiutil headers to a single "wpi" subdirectory
from the previously split "llvm", "support", "tcpsockets", and "udpsockets".
Shim headers will be added for backwards compatibility in a later commit.
This commit is contained in:
Peter Johnson
2018-04-29 23:33:19 -07:00
parent 93859eb84f
commit f84018af5f
377 changed files with 2747 additions and 2742 deletions

View File

@@ -14,10 +14,10 @@
#include <utility>
#include <vector>
#include <llvm/ArrayRef.h>
#include <llvm/StringMap.h>
#include <llvm/Twine.h>
#include <support/mutex.h>
#include <wpi/ArrayRef.h>
#include <wpi/StringMap.h>
#include <wpi/Twine.h>
#include <wpi/mutex.h>
#include "networktables/NetworkTableEntry.h"
#include "networktables/TableEntryListener.h"
@@ -27,9 +27,9 @@
namespace nt {
using llvm::ArrayRef;
using llvm::StringRef;
using llvm::Twine;
using wpi::ArrayRef;
using wpi::StringRef;
using wpi::Twine;
class NetworkTableInstance;
@@ -46,7 +46,7 @@ class NetworkTable final : public ITable {
NT_Inst m_inst;
std::string m_path;
mutable wpi::mutex m_mutex;
mutable llvm::StringMap<NT_Entry> m_entries;
mutable wpi::StringMap<NT_Entry> m_entries;
typedef std::pair<ITableListener*, NT_EntryListener> Listener;
std::vector<Listener> m_listeners;
@@ -89,7 +89,7 @@ class NetworkTable final : public ITable {
bool withLeadingSlash = true);
static StringRef NormalizeKey(const Twine& key,
llvm::SmallVectorImpl<char>& buf,
wpi::SmallVectorImpl<char>& buf,
bool withLeadingSlash = true);
/**

View File

@@ -14,8 +14,8 @@
#include <string>
#include <vector>
#include <llvm/StringRef.h>
#include <llvm/Twine.h>
#include <wpi/StringRef.h>
#include <wpi/Twine.h>
#include "networktables/NetworkTableType.h"
#include "networktables/NetworkTableValue.h"
@@ -25,9 +25,9 @@
namespace nt {
using llvm::ArrayRef;
using llvm::StringRef;
using llvm::Twine;
using wpi::ArrayRef;
using wpi::StringRef;
using wpi::Twine;
class NetworkTableInstance;

View File

@@ -14,9 +14,9 @@
#include <utility>
#include <vector>
#include <llvm/ArrayRef.h>
#include <llvm/StringRef.h>
#include <llvm/Twine.h>
#include <wpi/ArrayRef.h>
#include <wpi/StringRef.h>
#include <wpi/Twine.h>
#include "networktables/NetworkTable.h"
#include "networktables/NetworkTableEntry.h"
@@ -37,9 +37,9 @@
namespace nt {
using llvm::ArrayRef;
using llvm::StringRef;
using llvm::Twine;
using wpi::ArrayRef;
using wpi::StringRef;
using wpi::Twine;
/** NetworkTables Instance.
*

View File

@@ -17,17 +17,17 @@
#include <utility>
#include <vector>
#include <llvm/ArrayRef.h>
#include <llvm/StringRef.h>
#include <llvm/Twine.h>
#include <wpi/ArrayRef.h>
#include <wpi/StringRef.h>
#include <wpi/Twine.h>
#include "ntcore_c.h"
namespace nt {
using llvm::ArrayRef;
using llvm::StringRef;
using llvm::Twine;
using wpi::ArrayRef;
using wpi::StringRef;
using wpi::Twine;
/**
* A network table entry value.

View File

@@ -11,7 +11,7 @@
#include <functional>
#include <memory>
#include <llvm/StringRef.h>
#include <wpi/StringRef.h>
namespace nt {
@@ -19,7 +19,7 @@ class NetworkTable;
class NetworkTableEntry;
class Value;
using llvm::StringRef;
using wpi::StringRef;
/**
* A listener that listens to changes in values in a NetworkTable.

View File

@@ -11,13 +11,13 @@
#include <functional>
#include <memory>
#include <llvm/StringRef.h>
#include <wpi/StringRef.h>
namespace nt {
class NetworkTable;
using llvm::StringRef;
using wpi::StringRef;
/**
* A listener that listens to new sub-tables in a NetworkTable.

View File

@@ -12,7 +12,7 @@
#include <cstddef>
#include <support/deprecated.h>
#include <wpi/deprecated.h>
#ifdef __cplusplus
extern "C" {

View File

@@ -17,18 +17,18 @@
#include <utility>
#include <vector>
#include <llvm/ArrayRef.h>
#include <llvm/StringRef.h>
#include <llvm/Twine.h>
#include <support/deprecated.h>
#include <wpi/ArrayRef.h>
#include <wpi/StringRef.h>
#include <wpi/Twine.h>
#include <wpi/deprecated.h>
#include "networktables/NetworkTableValue.h"
namespace nt {
using llvm::ArrayRef;
using llvm::StringRef;
using llvm::Twine;
using wpi::ArrayRef;
using wpi::StringRef;
using wpi::Twine;
/** NetworkTables Entry Information */
struct EntryInfo {

View File

@@ -12,9 +12,9 @@
#include <string>
#include <vector>
#include <llvm/StringRef.h>
#include <llvm/Twine.h>
#include <support/deprecated.h>
#include <wpi/StringRef.h>
#include <wpi/Twine.h>
#include <wpi/deprecated.h>
#include "networktables/NetworkTableValue.h"
@@ -35,7 +35,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param key the key to search for
* @return true if the table as a value assigned to the given key
*/
virtual bool ContainsKey(const llvm::Twine& key) const = 0;
virtual bool ContainsKey(const wpi::Twine& key) const = 0;
/**
* Determines whether there exists a non-empty subtable for this key
@@ -45,7 +45,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @return true if there is a subtable with the key which contains at least
* one key/subtable of its own
*/
virtual bool ContainsSubTable(const llvm::Twine& key) const = 0;
virtual bool ContainsSubTable(const wpi::Twine& key) const = 0;
/**
* Gets the subtable in this table for the given name.
@@ -54,7 +54,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @return a sub table relative to this one
*/
virtual std::shared_ptr<nt::NetworkTable> GetSubTable(
const llvm::Twine& key) const = 0;
const wpi::Twine& key) const = 0;
/**
* @param types bitmask of types; 0 is treated as a "don't care".
@@ -72,7 +72,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
*
* @param key the key to make persistent
*/
virtual void SetPersistent(llvm::StringRef key) = 0;
virtual void SetPersistent(wpi::StringRef key) = 0;
/**
* Stop making a key's value persistent through program restarts.
@@ -80,7 +80,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
*
* @param key the key name
*/
virtual void ClearPersistent(llvm::StringRef key) = 0;
virtual void ClearPersistent(wpi::StringRef key) = 0;
/**
* Returns whether the value is persistent through program restarts.
@@ -88,7 +88,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
*
* @param key the key name
*/
virtual bool IsPersistent(llvm::StringRef key) const = 0;
virtual bool IsPersistent(wpi::StringRef key) const = 0;
/**
* Sets flags on the specified key in this table. The key can
@@ -97,7 +97,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param key the key name
* @param flags the flags to set (bitmask)
*/
virtual void SetFlags(llvm::StringRef key, unsigned int flags) = 0;
virtual void SetFlags(wpi::StringRef key, unsigned int flags) = 0;
/**
* Clears flags on the specified key in this table. The key can
@@ -106,7 +106,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param key the key name
* @param flags the flags to clear (bitmask)
*/
virtual void ClearFlags(llvm::StringRef key, unsigned int flags) = 0;
virtual void ClearFlags(wpi::StringRef key, unsigned int flags) = 0;
/**
* Returns the flags for the specified key.
@@ -114,14 +114,14 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param key the key name
* @return the flags, or 0 if the key is not defined
*/
virtual unsigned int GetFlags(llvm::StringRef key) const = 0;
virtual unsigned int GetFlags(wpi::StringRef key) const = 0;
/**
* Deletes the specified key in this table.
*
* @param key the key name
*/
virtual void Delete(const llvm::Twine& key) = 0;
virtual void Delete(const wpi::Twine& key) = 0;
/**
* Gets the value associated with a key as an object
@@ -130,7 +130,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @return the value associated with the given key, or nullptr if the key
* does not exist
*/
virtual std::shared_ptr<nt::Value> GetValue(const llvm::Twine& key) const = 0;
virtual std::shared_ptr<nt::Value> GetValue(const wpi::Twine& key) const = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -138,7 +138,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultValue(const llvm::Twine& key,
virtual bool SetDefaultValue(const wpi::Twine& key,
std::shared_ptr<nt::Value> defaultValue) = 0;
/**
@@ -148,7 +148,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutValue(const llvm::Twine& key,
virtual bool PutValue(const wpi::Twine& key,
std::shared_ptr<nt::Value> value) = 0;
/**
@@ -158,7 +158,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutNumber(llvm::StringRef key, double value) = 0;
virtual bool PutNumber(wpi::StringRef key, double value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -166,7 +166,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultNumber(llvm::StringRef key, double defaultValue) = 0;
virtual bool SetDefaultNumber(wpi::StringRef key, double defaultValue) = 0;
/**
* Gets the number associated with the given name.
@@ -176,7 +176,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @return the value associated with the given key or the given default value
* if there is no value associated with the key
*/
virtual double GetNumber(llvm::StringRef key, double defaultValue) const = 0;
virtual double GetNumber(wpi::StringRef key, double defaultValue) const = 0;
/**
* Put a string in the table
@@ -185,7 +185,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutString(llvm::StringRef key, llvm::StringRef value) = 0;
virtual bool PutString(wpi::StringRef key, wpi::StringRef value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -193,8 +193,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultString(llvm::StringRef key,
llvm::StringRef defaultValue) = 0;
virtual bool SetDefaultString(wpi::StringRef key,
wpi::StringRef defaultValue) = 0;
/**
* Gets the string associated with the given name. If the key does not
@@ -208,8 +208,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @note This makes a copy of the string. If the overhead of this is a
* concern, use GetValue() instead.
*/
virtual std::string GetString(llvm::StringRef key,
llvm::StringRef defaultValue) const = 0;
virtual std::string GetString(wpi::StringRef key,
wpi::StringRef defaultValue) const = 0;
/**
* Put a boolean in the table
@@ -218,7 +218,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutBoolean(llvm::StringRef key, bool value) = 0;
virtual bool PutBoolean(wpi::StringRef key, bool value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -226,7 +226,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultBoolean(llvm::StringRef key, bool defaultValue) = 0;
virtual bool SetDefaultBoolean(wpi::StringRef key, bool defaultValue) = 0;
/**
* Gets the boolean associated with the given name. If the key does not
@@ -237,7 +237,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @return the value associated with the given key or the given default value
* if there is no value associated with the key
*/
virtual bool GetBoolean(llvm::StringRef key, bool defaultValue) const = 0;
virtual bool GetBoolean(wpi::StringRef key, bool defaultValue) const = 0;
/**
* Put a boolean array in the table
@@ -249,8 +249,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* std::vector<bool> is special-cased in C++. 0 is false, any
* non-zero value is true.
*/
virtual bool PutBooleanArray(llvm::StringRef key,
llvm::ArrayRef<int> value) = 0;
virtual bool PutBooleanArray(wpi::StringRef key,
wpi::ArrayRef<int> value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -258,8 +258,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultBooleanArray(llvm::StringRef key,
llvm::ArrayRef<int> defaultValue) = 0;
virtual bool SetDefaultBooleanArray(wpi::StringRef key,
wpi::ArrayRef<int> defaultValue) = 0;
/**
* Returns the boolean array the key maps to. If the key does not exist or is
@@ -277,7 +277,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* non-zero value is true.
*/
virtual std::vector<int> GetBooleanArray(
llvm::StringRef key, llvm::ArrayRef<int> defaultValue) const = 0;
wpi::StringRef key, wpi::ArrayRef<int> defaultValue) const = 0;
/**
* Put a number array in the table
@@ -285,8 +285,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutNumberArray(llvm::StringRef key,
llvm::ArrayRef<double> value) = 0;
virtual bool PutNumberArray(wpi::StringRef key,
wpi::ArrayRef<double> value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -294,8 +294,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultNumberArray(llvm::StringRef key,
llvm::ArrayRef<double> defaultValue) = 0;
virtual bool SetDefaultNumberArray(wpi::StringRef key,
wpi::ArrayRef<double> defaultValue) = 0;
/**
* Returns the number array the key maps to. If the key does not exist or is
@@ -309,7 +309,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* concern, use GetValue() instead.
*/
virtual std::vector<double> GetNumberArray(
llvm::StringRef key, llvm::ArrayRef<double> defaultValue) const = 0;
wpi::StringRef key, wpi::ArrayRef<double> defaultValue) const = 0;
/**
* Put a string array in the table
@@ -317,8 +317,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutStringArray(llvm::StringRef key,
llvm::ArrayRef<std::string> value) = 0;
virtual bool PutStringArray(wpi::StringRef key,
wpi::ArrayRef<std::string> value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -327,7 +327,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultStringArray(
llvm::StringRef key, llvm::ArrayRef<std::string> defaultValue) = 0;
wpi::StringRef key, wpi::ArrayRef<std::string> defaultValue) = 0;
/**
* Returns the string array the key maps to. If the key does not exist or is
@@ -341,7 +341,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* concern, use GetValue() instead.
*/
virtual std::vector<std::string> GetStringArray(
llvm::StringRef key, llvm::ArrayRef<std::string> defaultValue) const = 0;
wpi::StringRef key, wpi::ArrayRef<std::string> defaultValue) const = 0;
/**
* Put a raw value (byte array) in the table
@@ -349,7 +349,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param value the value that will be assigned
* @return False if the table key already exists with a different type
*/
virtual bool PutRaw(llvm::StringRef key, llvm::StringRef value) = 0;
virtual bool PutRaw(wpi::StringRef key, wpi::StringRef value) = 0;
/**
* Gets the current value in the table, setting it if it does not exist.
@@ -357,8 +357,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param defaultValue the default value to set if key doesn't exist.
* @returns False if the table key exists with a different type
*/
virtual bool SetDefaultRaw(llvm::StringRef key,
llvm::StringRef defaultValue) = 0;
virtual bool SetDefaultRaw(wpi::StringRef key,
wpi::StringRef defaultValue) = 0;
/**
* Returns the raw value (byte array) the key maps to. If the key does not
@@ -371,8 +371,8 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @note This makes a copy of the raw contents. If the overhead of this is a
* concern, use GetValue() instead.
*/
virtual std::string GetRaw(llvm::StringRef key,
llvm::StringRef defaultValue) const = 0;
virtual std::string GetRaw(wpi::StringRef key,
wpi::StringRef defaultValue) const = 0;
/**
* Add a listener for changes to the table
@@ -410,7 +410,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* @param immediateNotify if true then this listener will be notified of all
* current entries (marked as new)
*/
virtual void AddTableListener(llvm::StringRef key, ITableListener* listener,
virtual void AddTableListener(wpi::StringRef key, ITableListener* listener,
bool immediateNotify) = 0;
/**
@@ -422,7 +422,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
* current entries (marked as new)
* @param flags bitmask of NT_NotifyKind specifying desired notifications
*/
virtual void AddTableListenerEx(llvm::StringRef key, ITableListener* listener,
virtual void AddTableListenerEx(wpi::StringRef key, ITableListener* listener,
unsigned int flags) = 0;
/**
@@ -450,7 +450,7 @@ class WPI_DEPRECATED("Use NetworkTable directly") ITable {
/**
* Gets the full path of this table.
*/
virtual llvm::StringRef GetPath() const = 0;
virtual wpi::StringRef GetPath() const = 0;
};
#endif // NTCORE_TABLES_ITABLE_H_

View File

@@ -10,8 +10,8 @@
#include <memory>
#include <llvm/StringRef.h>
#include <support/deprecated.h>
#include <wpi/StringRef.h>
#include <wpi/deprecated.h>
#include "networktables/NetworkTableValue.h"
@@ -38,7 +38,7 @@ class WPI_DEPRECATED(
* @param isNew true if the key did not previously exist in the table,
* otherwise it is false
*/
virtual void ValueChanged(ITable* source, llvm::StringRef key,
virtual void ValueChanged(ITable* source, wpi::StringRef key,
std::shared_ptr<nt::Value> value, bool isNew) = 0;
/**
@@ -51,7 +51,7 @@ class WPI_DEPRECATED(
* @param flags update flags; for example, NT_NOTIFY_NEW if the key did not
* previously exist in the table
*/
virtual void ValueChangedEx(ITable* source, llvm::StringRef key,
virtual void ValueChangedEx(ITable* source, wpi::StringRef key,
std::shared_ptr<nt::Value> value,
unsigned int flags);
};