Create utils.py

This commit is contained in:
XchanBik
2025-05-10 14:19:03 +02:00
committed by GitHub
parent 59cb793a8a
commit 4eb25925fd
+33
View File
@@ -0,0 +1,33 @@
class AnyType(str):
"""A special class that is always equal in not equal comparisons."""
def __ne__(self, __value: object) -> bool:
return False
class FlexibleType(dict):
"""
A special class to make flexible nodes that accept any types.
This is what enables our bridge store node to accept any input type and out any output type.
"""
def __init__(self, type):
self.type = type
def __getitem__(self, key):
return (self.type, )
def __contains__(self, key):
return True
# Create an instance of AnyType for use in node definitions
any_type = AnyType("*")
class ByPassTypeTuple(tuple):
"""
A special class that will return additional "AnyType" strings beyond defined values.
Useful for dynamic outputs.
"""
def __getitem__(self, index):
if index > len(self) - 1:
return AnyType("*")
return super().__getitem__(index)