26 allKeys.reserve(continuousKeys.size() + discreteKeys.size());
27 std::copy(continuousKeys.begin(), continuousKeys.end(),
28 std::back_inserter(allKeys));
30 std::back_inserter(allKeys),
38 allKeys.reserve(keys1.size() + keys2.size());
39 std::copy(keys1.begin(), keys1.end(), std::back_inserter(allKeys));
40 std::copy(keys2.begin(), keys2.end(), std::back_inserter(allKeys));
48 std::copy(
key1.begin(),
key1.end(), std::back_inserter(allKeys));
49 std::copy(
key2.begin(),
key2.end(), std::back_inserter(allKeys));
60 if ((continuousKeys.size() == 0) && (discreteKeys.size() != 0)) {
62 }
else if ((continuousKeys.size() != 0) && (discreteKeys.size() == 0)) {
64 }
else if ((continuousKeys.size() != 0) && (discreteKeys.size() != 0)) {
76 category_(
GetCategory(continuousKeys, discreteKeys)),
77 discreteKeys_(discreteKeys),
78 continuousKeys_(continuousKeys) {}
83 category_(Category::Discrete),
84 discreteKeys_(discreteKeys),
85 continuousKeys_({}) {}
89 const This *
e =
dynamic_cast<const This *
>(&lf);
98 std::cout << (
s.empty() ?
"" :
s +
"\n");
101 std::cout <<
"Continuous ";
104 std::cout <<
"Discrete ";
107 std::cout <<
"Hybrid ";
110 std::cout <<
"None ";