class_docstr: AST Visitor that processes function calls.
  
  Updates function calls from old API version to new API version using a given
  change spec.
class_docstr_tok: ["AST","Visitor","that","processes","function","calls",".","Updates","function","calls","from","old","API","version","to","new","API","version","using","a","given","change","spec","."]
docstr: Record a log and print it.
  
  The log should be a tuple `(severity, lineno, col_offset, msg)`, which will
  be printed and recorded. It is part of the log available in the `self.log`
  property.
  
  Args:
    logs: The logs to add. Must be a list of tuples
      `(severity, lineno, col_offset, msg)`.
docstr_tok: ["Record","a","log","and","print","it",".","The","log","should","be","a","tuple","`","(","severity",",","lineno",",","col_offset",",","msg",")","`",",","which","will","be","printed","and","recorded",".","It","is","part","of","the","log","available","in","the","`","self.log","`","property",".","Args",":","logs",":","The","logs","to","add",".","Must","be","a","list","of","tuples","`","(","severity",",","lineno",",","col_offset",",","msg",")","`","."]
code: def add_logs(self, logs):
      """Record a log and print it.
  
      The log should be a tuple `(severity, lineno, col_offset, msg)`, which will
      be printed and recorded. It is part of the log available in the `self.log`
      property.
  
      Args:
        logs: The logs to add. Must be a list of tuples
          `(severity, lineno, col_offset, msg)`.
      """
      self._log.extend(logs)
      for log in logs:
          print("%s line %d:%d: %s" % log)
  
imports: import ast
  import collections
  import os
  import re
  import shutil
  import sys
  import tempfile
  import traceback
  import pasta
label_desc: Use image node_id 9 for calling the _PastaEditVisitor obj's underlying member method code with example usage: obj.add_logs(logs) without return types