class_docstr: Checker for PEP 257, NumPy and Google conventions.
  
  D10x: Missing docstrings
  D20x: Whitespace issues
  D30x: Docstring formatting
  D40x: Docstring content issues
class_docstr_tok: ["Checker","for","PEP","257",",","NumPy","and","Google","conventions",".","D10x",":","Missing","docstrings","D20x",":","Whitespace","issues","D30x",":","Docstring","formatting","D40x",":","Docstring","content","issues"]
docstr: D4{05,10,11,13}, D214: Section name checks.
  
  Check for valid section names. Checks that:
      * The section name is properly capitalized (D405).
      * The section is not over-indented (D214).
      * There's a blank line after the section (D410, D413).
      * There's a blank line before the section (D411).
  
  Also yields all the errors from `_check_blanks_and_section_underline`.
docstr_tok: ["D4","{","05,10,11,13","}",",","D214",":","Section","name","checks",".","Check","for","valid","section","names",".","Checks","that",":","*","The","section","name","is","properly","capitalized","(","D405",")",".","*","The","section","is","not","over-indented","(","D214",")",".","*","There","'s","a","blank","line","after","the","section","(","D410",",","D413",")",".","*","There","'s","a","blank","line","before","the","section","(","D411",")",".","Also","yields","all","the","errors","from","`","_check_blanks_and_section_underline","`","."]
code: def _check_common_section(
      cls, docstring, definition, context, valid_section_names
  ):
      """D4{05,10,11,13}, D214: Section name checks.
  
      Check for valid section names. Checks that:
          * The section name is properly capitalized (D405).
          * The section is not over-indented (D214).
          * There's a blank line after the section (D410, D413).
          * There's a blank line before the section (D411).
  
      Also yields all the errors from `_check_blanks_and_section_underline`.
      """
      indentation = cls._get_docstring_indent(definition, docstring)
      capitalized_section = context.section_name.title()
  
      if (
          context.section_name not in valid_section_names
          and capitalized_section in valid_section_names
      ):
          yield violations.D405(
              capitalized_section, context.section_name
          )
  
      if leading_space(context.line) > indentation:
          yield violations.D214(capitalized_section)
  
      if not context.following_lines or not is_blank(
          context.following_lines[-1]
      ):
          if context.is_last_section:
              yield violations.D413(capitalized_section)
          else:
              yield violations.D410(capitalized_section)
  
      if not is_blank(context.previous_line):
          yield violations.D411(capitalized_section)
  
      yield from cls._check_blanks_and_section_underline(
          capitalized_section, context, indentation
      )
  
imports: import ast
  import string
  import tokenize
  from collections import namedtuple
  from itertools import chain, takewhile
  from re import compile
  from textwrap import dedent
  from .None import violations
  from .config import IllegalConfiguration
  from .parser import AllError, Class, Definition, Function, Method, Module, NestedClass, NestedFunction, Package, ParseError, Parser, StringIO
  from .utils import common_prefix_length, is_blank, log, pairwise, strip_non_alphanumeric
  from .wordlists import IMPERATIVE_BLACKLIST, IMPERATIVE_VERBS, stem
label_desc: Use image node_id 26 for calling the ConventionChecker obj's underlying member method code with example usage: obj._check_common_section(cls, docstring, definition, context, valid_section_names) without return types