aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are hereHEADmaster
Diffstat (limited to '.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py')
-rw-r--r--.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py56
1 files changed, 56 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py b/.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py
new file mode 100644
index 00000000..0be2bac4
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/lxml/html/_setmixin.py
@@ -0,0 +1,56 @@
+try:
+ from collections.abc import MutableSet
+except ImportError:
+ from collections.abc import MutableSet
+
+
+class SetMixin(MutableSet):
+
+ """
+ Mix-in for sets. You must define __iter__, add, remove
+ """
+
+ def __len__(self):
+ length = 0
+ for item in self:
+ length += 1
+ return length
+
+ def __contains__(self, item):
+ for has_item in self:
+ if item == has_item:
+ return True
+ return False
+
+ issubset = MutableSet.__le__
+ issuperset = MutableSet.__ge__
+
+ union = MutableSet.__or__
+ intersection = MutableSet.__and__
+ difference = MutableSet.__sub__
+ symmetric_difference = MutableSet.__xor__
+
+ def copy(self):
+ return set(self)
+
+ def update(self, other):
+ self |= other
+
+ def intersection_update(self, other):
+ self &= other
+
+ def difference_update(self, other):
+ self -= other
+
+ def symmetric_difference_update(self, other):
+ self ^= other
+
+ def discard(self, item):
+ try:
+ self.remove(item)
+ except KeyError:
+ pass
+
+ @classmethod
+ def _from_iterable(cls, it):
+ return set(it)