code: def get_json_obj(json_file: str) -> Tuple[Any, int]:
      """
      Sometimes at the start of file llvm/gcov will complains "fail to find coverage data",
      then we need to skip these lines
        -- success read: 0      -  this json file have the full json coverage information
        -- partial success: 1   -  this json file starts with some error prompt, but still have the coverage information
        -- fail to read: 2      -  this json file doesn't have any coverage information
      """
      read_status = -1
      with open(json_file) as f:
          lines = f.readlines()
          for line in lines:
              try:
                  json_obj = json.loads(line)
              except json.JSONDecodeError:
                  read_status = 1
                  continue
              else:
                  if read_status == -1:
                      # not meet jsonDecoderError before, return success
                      read_status = 0
                  return (json_obj, read_status)
      return None, 2
  
file_path: pytorch/tools/code_coverage/package/tool/summarize_jsons.py
imports: import json
  import os
  import time
  from typing import Any, Dict, List, Set, Tuple
  from ..util.setting import CompilerType, JSON_FOLDER_BASE_DIR, TestList, TestPlatform, TestStatusType
  from ..util.utils import detect_compiler_type, print_error, print_time, related_to_test_list
  from .parser.coverage_record import CoverageRecord
  from .parser.gcov_coverage_parser import GcovCoverageParser
  from .parser.llvm_coverage_parser import LlvmCoverageParser
  from .print_report import file_oriented_report, html_oriented_report, line_oriented_report
label_desc: Use image node_id 3 for calling a global function with example usage: get_json_obj(json_file) and returns: None,  int, json_obj,  read_status