code: def visit_literal_block(self, node):
          
          # For "..code-block:: language"
          language = node.get('language', None)
          is_code_node = False
          if not language:
              # For "..code:: language"
              is_code_node = True
              classes = node.get('classes')
              if 'code' in classes:
                  language = classes[-1]
              else:
                  return
  
          if language in self.ignore['languages']:
              return
  
          if language == 'doctest' or (
                  language == 'python' and
                  node.rawsource.lstrip().startswith('>>> ')):
              self.visit_doctest_block(node)
              raise docutils.nodes.SkipNode
  
          checker = {
              'bash': bash_checker,
              'c': c_checker,
              'cpp': cpp_checker,
              'json': lambda source, _: lambda: check_json(source),
              'xml': lambda source, _: lambda: check_xml(source),
              'python': lambda source, _: lambda: check_python(source),
              'rst': lambda source, _: lambda: check_rst(source,
                                                         ignore=self.ignore)
          }.get(language)
  
          if checker:
              run = checker(node.rawsource, self.working_directory)
              self._add_check(node=node,
                              run=run,
                              language=language,
                              is_code_node=is_code_node)
  
          raise docutils.nodes.SkipNode
docs: Check syntax of code block.