class_docstr: A printer to convert SymPy expressions to strings of Rust code
class_docstr_tok: ["A","printer","to","convert","SymPy","expressions","to","strings","of","Rust","code"]
code: def _print_caller_var(self, expr):
      if len(expr.args) > 1:
          # for something like `sin(x + y + z)`,
          # make sure we can get '(x + y + z).sin()'
          # instead of 'x + y + z.sin()'
          return "(" + self._print(expr) + ")"
      elif expr.is_number:
          return self._print(expr, _type=True)
      else:
          return self._print(expr)
  
imports: from __future__ import annotations
  from typing import Any
  from sympy.core import S, Rational, Float, Lambda
  from sympy.core.numbers import equal_valued
  from sympy.printing.codeprinter import CodePrinter
label_desc: Use image node_id 9 for calling the RustCodePrinter obj's underlying member method code with example usage: obj._print_caller_var(expr) and returns: unknown, self, self