18#include "../Descriptor.h"
89 addAndPair(descriptor);
102 template <
typename T>
120 if (d_descriptors.size() !=
that.d_descriptors.size()) {
121 throw std::runtime_error(
"Descriptor lists should be the same length!");
125 for (
auto i = 1u; i < d_descriptors.size(); ++i) {
144 std::stringstream
ss;
145 auto basis = d_descriptors[0];
151 for (
auto it = d_descriptors.begin() + 1;
it != d_descriptors.end(); ++
it) {
159 std::vector<Descriptor> d_descriptors;
172 if (!d_descriptors.empty() && d_descriptors[0] == descriptor) {
177 d_descriptors.push_back(
ref(descriptor));
bool operator<(const PairList &that) const
std::string toString() const
static constexpr int numPairingBits
static Descriptor ref(Descriptor descriptor)
int compareTo(const PairList &that) const
bool add(Descriptor descriptor)
PairList(const PairList &head, const PairList &tail)
void addAll(const T &descriptors)
pairing_t getPairing() const
Descriptor getRefDescriptor() const
static std::string to_string(const Descriptor &desc)
bool rdvalue_is(const RDValue_cast_t)