class_docstr: Container objects attached to exceptions raised in user code.
  
  This metadata allows re-raising exceptions that occur in generated code, with
  a custom error message that includes a stack trace relative to user-readable
  code from which the generated code originated.
docstr: Returns the message for the underlying exception.
docstr_tok: ["Returns","the","message","for","the","underlying","exception","."]
code: def get_message(self):
      """Returns the message for the underlying exception."""
      lines = []
  
      lines.append("in user code:")
      lines.append("")
  
      for frame_info in reversed(self.translated_stack):
          # Same format with Python traceback.
          formatted_line = (
              f'    File "{frame_info.filename}", line '
              f"{frame_info.lineno}, in {frame_info.function_name}"
          )
          if frame_info.is_converted:
              formatted_line += "  *"
          elif frame_info.is_allowlisted:
              formatted_line += "  **"
          lines.append(formatted_line)
  
          if frame_info.code is None:
              code_snippet = "<source unavailable>"
          else:
              code_snippet = frame_info.code.strip()
          lines.append("        {}".format(code_snippet))
  
      lines.append("")
  
      message_lines = self.cause_message.split("\n")
      for i in range(len(message_lines)):
          message_lines[i] = "    " + message_lines[i]
      lines.extend(message_lines)
  
      lines.append("")
  
      return "\n".join(lines)
  
file_path: DALI/dali/python/nvidia/dali/_autograph/pyct/error_utils.py
imports: import collections
  from nvidia.dali._autograph.pyct import origin_info
label_desc: Use image node_id 2 for calling the ErrorMetadataBase obj's underlying member method code with example usage: obj.get_message() and returns: str