def METHOD_NAME(self, node: ASTExpressionNode) -> str:
    """
    Prints a unary operator.
    :param unary_operator: an operator object
    :return: a string representation
    """
    rhs = self.print(node.get_expression())
    unary_operator = node.get_unary_operator()
    if unary_operator.is_unary_plus:
        return "(" + "+" + rhs + ")"
    if unary_operator.is_unary_minus:
        return "(" + "-" + rhs + ")"
    if unary_operator.is_unary_tilde:
        return "(" + "~" + rhs + ")"
    raise RuntimeError("Cannot determine unary operator!")