@@ -905,38 +905,6 @@ def remove_variable_block(
905905
906906 return removed_block
907907
908- def set_variable_rule (self , variable_name , rule ):
909- """Sets a rule on a specified variable in the dictionary
910-
911- Parameters
912- ----------
913- variable_name : str
914- Name of the variable the rule is set on.
915- rule : `Rule`
916- The rule to be set on the variable whose name is ``variable_name``.
917-
918- Raises
919- ------
920- `TypeError`
921- If ``rule`` is not of type `Rule`
922- If ``variable_name`` is not of type `str`
923-
924- `ValueError`
925- If ``variable_name`` is the empty string
926-
927- `KeyError`
928- If no variable of name ``variable_name`` exists in the dictionary
929- """
930- if not is_string_like (variable_name ):
931- raise TypeError (
932- type_error_message ("variable_name" , variable_name , "string-like" )
933- )
934- if not variable_name :
935- raise ValueError ("'variable_name' must not be empty" )
936- if not isinstance (rule , Rule ):
937- raise TypeError (type_error_message ("rule" , rule , Rule ))
938- self .get_variable (variable_name ).rule = repr (rule )
939-
940908 def set_variable_block_rule (self , variable_block_name , rule ):
941909 """Sets a rule on a specified variable block in the dictionary
942910
@@ -1331,6 +1299,27 @@ def full_type(self):
13311299 full_type += f"({ self .structure_type } )"
13321300 return full_type
13331301
1302+ def get_rule (self ):
1303+ """Gets `Rule` from a specified variable"""
1304+ return Rule (name = self .rule )
1305+
1306+ def set_rule (self , rule ):
1307+ """Sets a rule on a specified variable in the dictionary
1308+
1309+ Parameters
1310+ ----------
1311+ rule : `Rule`
1312+ The rule to be set on the variable.
1313+
1314+ Raises
1315+ ------
1316+ `TypeError`
1317+ If ``rule`` is not of type `Rule`
1318+ """
1319+ if not isinstance (rule , Rule ):
1320+ raise TypeError (type_error_message ("rule" , rule , Rule ))
1321+ self .rule = repr (rule )
1322+
13341323 def write (self , writer ):
13351324 """Writes the domain to a file writer in ``.kdic`` format
13361325
@@ -1506,6 +1495,27 @@ def get_value(self, key):
15061495 """
15071496 return self .meta_data .get_value (key )
15081497
1498+ def get_rule (self ):
1499+ """Gets `Rule` from a specified variable block"""
1500+ return Rule (name = self .rule )
1501+
1502+ def set_rule (self , rule ):
1503+ """Sets a rule on a specified variable block in the dictionary
1504+
1505+ Parameters
1506+ ----------
1507+ rule : `Rule`
1508+ The rule to be set on the variable block
1509+
1510+ Raises
1511+ ------
1512+ `TypeError`
1513+ If ``rule`` is not of type `Rule`
1514+ """
1515+ if not isinstance (rule , Rule ):
1516+ raise TypeError (type_error_message ("rule" , rule , Rule ))
1517+ self .rule = repr (rule )
1518+
15091519 def write (self , writer ):
15101520 """Writes the variable block to a file writer in ``.kdic`` format
15111521
0 commit comments