parameters: (input_api, output_api)
docstring: Attempts to prevent inclusion of inline headers into normal header
    files. This tries to establish a layering where inline headers can be
    included by other inline headers or compilation units only.
docstring_summary: Attempts to prevent inclusion of inline headers into normal header
    files. This tries to establish a layering where inline headers can be
    included by other inline headers or compilation units only.
docstring_tokens: Attempts to prevent inclusion of inline headers into normal header files . This tries to establish a layering where inline headers can be included by other inline headers or compilation units only .
function: def _CheckNoInlineHeaderIncludesInNormalHeaders(input_api, output_api):
    """Attempts to prevent inclusion of inline headers into normal header
    files. This tries to establish a layering where inline headers can be
    included by other inline headers or compilation units only."""
    file_inclusion_pattern = r'(?!.+-inl\.h).+\.h'
    include_directive_pattern = input_api.re.compile(r'#include ".+-inl.h"')
    include_warning = (
      'You might be including an inline header (e.g. foo-inl.h) within a\n'
      'normal header (e.g. bar.h) file.  Can you avoid introducing the\n'
      '#include?  The commit queue will not block on this warning.')
  
    def FilterFile(affected_file):
      black_list = (_EXCLUDED_PATHS +
                    input_api.DEFAULT_BLACK_LIST)
      return input_api.FilterSourceFile(
        affected_file,
        white_list=(file_inclusion_pattern, ),
        black_list=black_list)
  
    problems = []
    for f in input_api.AffectedSourceFiles(FilterFile):
      local_path = f.LocalPath()
      for line_number, line in f.ChangedContents():
        if (include_directive_pattern.search(line)):
          problems.append(
            '%s:%d\n    %s' % (local_path, line_number, line.strip()))
  
    if problems:
      return [output_api.PresubmitPromptOrNotify(include_warning, problems)]
    else:
      return []
function_tokens: def _CheckNoInlineHeaderIncludesInNormalHeaders ( input_api , output_api ) : file_inclusion_pattern = r'(?!.+-inl\.h).+\.h' include_directive_pattern = input_api . re . compile ( r'#include ".+-inl.h"' ) include_warning = ( 'You might be including an inline header (e.g. foo-inl.h) within a\n' 'normal header (e.g. bar.h) file.  Can you avoid introducing the\n' '#include?  The commit queue will not block on this warning.' ) def FilterFile ( affected_file ) : black_list = ( _EXCLUDED_PATHS + input_api . DEFAULT_BLACK_LIST ) return input_api . FilterSourceFile ( affected_file , white_list = ( file_inclusion_pattern , ) , black_list = black_list ) problems = [ ] for f in input_api . AffectedSourceFiles ( FilterFile ) : local_path = f . LocalPath ( ) for line_number , line in f . ChangedContents ( ) : if ( include_directive_pattern . search ( line ) ) : problems . append ( '%s:%d\n    %s' % ( local_path , line_number , line . strip ( ) ) ) if problems : return [ output_api . PresubmitPromptOrNotify ( include_warning , problems ) ] else : return [ ]