Beispiel #1
0
    def apply(self, symbols, attributes, evaluation):
        "ClearAttributes[symbols_, attributes_]"

        symbols = get_symbol_list(symbols, lambda item: evaluation.message("ClearAttributes", "sym", item, 1))
        if symbols is None:
            return
        values = get_symbol_list(attributes, lambda item: evaluation.message("ClearAttributes", "sym", item, 2))
        if values is None:
            return
        for symbol in symbols:
            if "Locked" in evaluation.definitions.get_attributes(symbol):
                evaluation.message("ClearAttributes", "locked", symbol)
            else:
                for value in values:
                    evaluation.definitions.clear_attribute(symbol, value)
        return Symbol("Null")
Beispiel #2
0
 def apply(self, symbols, attributes, evaluation):
     'ClearAttributes[symbols_, attributes_]'
     
     symbols = get_symbol_list(symbols, lambda item: evaluation.message('ClearAttributes', 'sym', item, 1))
     if symbols is None:
         return
     values = get_symbol_list(attributes, lambda item: evaluation.message('ClearAttributes', 'sym', item, 2))
     if values is None:
         return
     for symbol in symbols:
         if 'Locked' in evaluation.definitions.get_attributes(symbol):
             evaluation.message('ClearAttributes', 'locked', symbol)
         else:
             for value in values:
                 evaluation.definitions.clear_attribute(symbol, value)
     return Symbol('Null')
Beispiel #3
0
    def apply(self, symbols, attributes, evaluation):
        "SetAttributes[symbols_, attributes_]"

        symbols = get_symbol_list(
            symbols,
            lambda item: evaluation.message("SetAttributes", "sym", item, 1))
        if symbols is None:
            return
        values = get_symbol_list(
            attributes,
            lambda item: evaluation.message("SetAttributes", "sym", item, 2))
        if values is None:
            return
        for symbol in symbols:
            if "System`Locked" in evaluation.definitions.get_attributes(
                    symbol):
                evaluation.message("SetAttributes", "locked", Symbol(symbol))
            else:
                for value in values:
                    evaluation.definitions.set_attribute(symbol, value)
        return SymbolNull