class_docstr: clang tidy wrapper.
  Args:
    args:  Command line arguments.
        cpp_lint: Run linter on C++ source code.
        cuda_lint: Run linter on CUDA source code.
        use_dmlc_gtest: Whether to use gtest bundled in dmlc-core.
docstr: Load and configure compile_commands and clang_tidy.
docstr_tok: ["Load","and","configure","compile_commands","and","clang_tidy","."]
code: def _configure(self):
      """Load and configure compile_commands and clang_tidy."""
  
      def should_lint(path):
          if not self.cpp_lint and path.endswith(".cc"):
              return False
          isxgb = path.find("rabit") == -1
          isxgb = isxgb and path.find("dmlc-core") == -1
          isxgb = isxgb and (not path.startswith(self.cdb_path))
          if isxgb:
              print(path)
              return True
  
      cdb_file = os.path.join(self.cdb_path, "compile_commands.json")
      with open(cdb_file, "r") as fd:
          self.compile_commands = json.load(fd)
  
      tidy_file = os.path.join(self.root_path, ".clang-tidy")
      with open(tidy_file) as fd:
          self.clang_tidy = yaml.safe_load(fd)
          self.clang_tidy = str(self.clang_tidy)
      all_files = []
      for entry in self.compile_commands:
          path = entry["file"]
          if should_lint(path):
              args = self._configure_flags(path, entry["command"])
              all_files.extend(args)
      return all_files
  
imports: import argparse
  import json
  import os
  import re
  import shutil
  import subprocess
  import sys
  from multiprocessing import Pool, cpu_count
  from time import time
  import yaml
label_desc: Use image node_id 7 for calling the ClangTidy obj's underlying member method code with example usage: obj._configure() and returns: all_files, False, True