Skip to content
Snippets Groups Projects
Commit 939de318 authored by Fabian Vu's avatar Fabian Vu
Browse files

Implement missing functions in C++ BSet

parent 7f780b00
No related branches found
No related tags found
No related merge requests found
Pipeline #144639 failed
......@@ -349,6 +349,33 @@ class BSet : public BObject {
return BBoolean(this->set != other.set);
}
BBoolean subsetOfBoolean() {
for(const T& e : this->set) {
if(typeid(e) == typeid(BBoolean)) {
return BBoolean(true);
} else {
return BBoolean(false);
}
}
return BBoolean(true);
}
BBoolean strictSubsetOfBoolean() {
return this->subsetOfBoolean();
}
BBoolean notSubsetOfBoolean() {
return this->subsetOfBoolean()._not();
}
BBoolean equalBoolean() {
return BBoolean(subsetOfBoolean().booleanValue() && this->size() == 2);
}
BBoolean notEqualBoolean() {
return BBoolean(subsetOfBoolean().booleanValue() && this->size() < 2);
}
BBoolean subsetOfInteger() {
for(const T& e : this->set) {
if(typeid(e) == typeid(BInteger)) {
......
......@@ -350,6 +350,33 @@ class BSet : public BObject {
return BBoolean(this->set != other.set);
}
BBoolean subsetOfBoolean() {
for(const T& e : this->set) {
if(typeid(e) == typeid(BBoolean)) {
return BBoolean(true);
} else {
return BBoolean(false);
}
}
return BBoolean(true);
}
BBoolean strictSubsetOfBoolean() {
return this->subsetOfBoolean();
}
BBoolean notSubsetOfInteger() {
return this->subsetOfBoolean()._not();
}
BBoolean equalBoolean() {
return BBoolean(subsetOfBoolean().booleanValue() && this->size() == 2);
}
BBoolean notEqualBoolean() {
return BBoolean(subsetOfBoolean().booleanValue() && this->size() < 2);
}
BBoolean subsetOfInteger() {
for(const T& e : this->set) {
if(typeid(e) == typeid(BInteger)) {
......@@ -365,8 +392,8 @@ class BSet : public BObject {
return this->subsetOfInteger();
}
BBoolean notSubsetOfInteger() {
return this->subsetOfInteger()._not();
BBoolean notSubsetOfBoolean() {
return this->subsetOfBoolean()._not();
}
BBoolean equalInteger() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment