Visitor for `Assignment` AST node.

def visit_Assignment(self, node):
        """Visitor for `Assignment` AST node."""
        var_name = node.left.identifier.name
        var_symbol = self.table[var_name]

        if var_symbol is not None and not var_symbol.is_mutable:
            raise SementicError(f"Re-assignment of immutable variable `{var_name}`.")

        self.visit(node.left)
        self.visit(node.right)