@@ -86,12 +86,12 @@ class Condition:
8686 """
8787
8888 # Combine all possible keyword arguments from the different Condition types
89- __slots__ = list (
89+ available_kwargs = list (
9090 set (
91- InputTargetCondition .__slots__
92- + InputEquationCondition .__slots__
93- + DomainEquationCondition .__slots__
94- + DataCondition .__slots__
91+ InputTargetCondition .__fields__
92+ + InputEquationCondition .__fields__
93+ + DomainEquationCondition .__fields__
94+ + DataCondition .__fields__
9595 )
9696 )
9797
@@ -112,28 +112,28 @@ def __new__(cls, *args, **kwargs):
112112 if len (args ) != 0 :
113113 raise ValueError (
114114 "Condition takes only the following keyword "
115- f"arguments: { Condition .__slots__ } ."
115+ f"arguments: { Condition .available_kwargs } ."
116116 )
117117
118118 # Class specialization based on keyword arguments
119119 sorted_keys = sorted (kwargs .keys ())
120120
121121 # Input - Target Condition
122- if sorted_keys == sorted (InputTargetCondition .__slots__ ):
122+ if sorted_keys == sorted (InputTargetCondition .__fields__ ):
123123 return InputTargetCondition (** kwargs )
124124
125125 # Input - Equation Condition
126- if sorted_keys == sorted (InputEquationCondition .__slots__ ):
126+ if sorted_keys == sorted (InputEquationCondition .__fields__ ):
127127 return InputEquationCondition (** kwargs )
128128
129129 # Domain - Equation Condition
130- if sorted_keys == sorted (DomainEquationCondition .__slots__ ):
130+ if sorted_keys == sorted (DomainEquationCondition .__fields__ ):
131131 return DomainEquationCondition (** kwargs )
132132
133133 # Data Condition
134134 if (
135- sorted_keys == sorted (DataCondition .__slots__ )
136- or sorted_keys [0 ] == DataCondition .__slots__ [0 ]
135+ sorted_keys == sorted (DataCondition .__fields__ )
136+ or sorted_keys [0 ] == DataCondition .__fields__ [0 ]
137137 ):
138138 return DataCondition (** kwargs )
139139
0 commit comments