def concEval (self, vmap = {}):
retv = self.opd().concEval(vmap)
assert((type(retv) is int) or (type(retv) is float) or (isinstance(retv, Fraction)))
if (self.operator.label == "abs"):
return abs(retv)
elif (self.operator.label == "sqrt"):
return math.sqrt(retv)
elif (self.operator.label == "-"):
if (type(retv) is int):
return (-1 * retv)
elif ((type(retv) is float) or (isinstance(retv, Fraction))):
return (-1.0 * retv)
else:
assert(False)
else:
sys.exit("ERROR: unknwon operator found in function \"concEval\" of a UnaryExpr")
评论列表
文章目录