Merge pull request #18450 from dundargoc/build/clint/remove-function-size-warning

build(clint): remove "function size is too large" warning
This commit is contained in:
bfredl
2022-05-07 14:21:01 +02:00
committed by GitHub
10 changed files with 9 additions and 38 deletions

View File

@@ -44,7 +44,6 @@ same line, but it is far from perfect (in either direction).
import codecs import codecs
import copy import copy
import getopt import getopt
import math # for log
import os import os
import re import re
import sre_compile import sre_compile
@@ -183,7 +182,6 @@ _ERROR_CATEGORIES = [
'readability/alt_tokens', 'readability/alt_tokens',
'readability/bool', 'readability/bool',
'readability/braces', 'readability/braces',
'readability/fn_size',
'readability/multiline_comment', 'readability/multiline_comment',
'readability/multiline_string', 'readability/multiline_string',
'readability/nul', 'readability/nul',
@@ -642,32 +640,6 @@ class _FunctionState:
if self.in_a_function: if self.in_a_function:
self.lines_in_function += 1 self.lines_in_function += 1
def Check(self, error, filename, linenum):
"""Report if too many lines in function body.
Args:
error: The function to call with any errors found.
filename: The name of the current file.
linenum: The number of the line to check.
"""
if Match(r'T(EST|est)', self.current_function):
base_trigger = self._TEST_TRIGGER
else:
base_trigger = self._NORMAL_TRIGGER
trigger = base_trigger * 2**_VerboseLevel()
if self.lines_in_function > trigger:
error_level = int(
math.log(self.lines_in_function / base_trigger, 2))
# 50 => 0, 100 => 1, 200 => 2, 400 => 3, 800 => 4, 1600 => 5, ...
if error_level > 5:
error_level = 5
error(filename, linenum, 'readability/fn_size', error_level,
'Small and focused functions are preferred:'
' %s has %d non-comment lines'
' (error triggered by exceeding %d lines).' % (
self.current_function, self.lines_in_function, trigger))
def End(self): def End(self):
"""Stop analyzing function body.""" """Stop analyzing function body."""
self.in_a_function = False self.in_a_function = False
@@ -1887,7 +1859,6 @@ def CheckForFunctionLengths(filename, clean_lines, linenum,
error(filename, linenum, 'readability/fn_size', 5, error(filename, linenum, 'readability/fn_size', 5,
'Lint failed to find start of function body.') 'Lint failed to find start of function body.')
elif Match(r'^\}\s*$', line): # function end elif Match(r'^\}\s*$', line): # function end
function_state.Check(error, filename, linenum)
function_state.End() function_state.End()
elif not Match(r'^\s*$', line): elif not Match(r'^\s*$', line):
function_state.Count() # Count non-blank/non-comment lines. function_state.Count() # Count non-blank/non-comment lines.

View File

@@ -4544,7 +4544,7 @@ int build_stl_str_hl(win_T *wp, char_u *out, size_t outlen, char_u *fmt, int use
} }
return width; return width;
} // NOLINT(readability/fn_size) }
/// Get relative cursor position in window into "buf[buflen]", in the form 99%, /// Get relative cursor position in window into "buf[buflen]", in the form 99%,
/// using "Top", "Bot" or "All" when appropriate. /// using "Top", "Bot" or "All" when appropriate.

View File

@@ -1802,7 +1802,7 @@ theend:
xfree(next_line); xfree(next_line);
xfree(allocated); xfree(allocated);
return retval; return retval;
} // NOLINT(readability/fn_size) }
/// Delete from cursor to end of line. /// Delete from cursor to end of line.
/// Caller must have prepared for undo. /// Caller must have prepared for undo.

View File

@@ -2586,7 +2586,7 @@ ret_free:
if (show_block) { if (show_block) {
ui_ext_cmdline_block_leave(); ui_ext_cmdline_block_leave();
} }
} // NOLINT(readability/fn_size) }
/// @return 5 if "p" starts with "<SID>" or "<SNR>" (ignoring case). /// @return 5 if "p" starts with "<SID>" or "<SNR>" (ignoring case).
/// 2 if "p" starts with "s:". /// 2 if "p" starts with "s:".

View File

@@ -4467,7 +4467,7 @@ skip:
return preview_buf; return preview_buf;
#undef ADJUST_SUB_FIRSTLNUM #undef ADJUST_SUB_FIRSTLNUM
#undef PUSH_PREVIEW_LINES #undef PUSH_PREVIEW_LINES
} // NOLINT(readability/fn_size) }
/// Give message for number of substitutions. /// Give message for number of substitutions.
/// Can also be used after a ":global" command. /// Can also be used after a ":global" command.

View File

@@ -2219,7 +2219,7 @@ doend:
--ex_nesting_level; --ex_nesting_level;
return ea.nextcmd; return ea.nextcmd;
} // NOLINT(readability/fn_size) }
static char ex_error_buf[MSG_BUF_LEN]; static char ex_error_buf[MSG_BUF_LEN];

View File

@@ -3761,7 +3761,7 @@ end:
// If the cursor is past the end of the line put it at the end. // If the cursor is past the end of the line put it at the end.
adjust_cursor_eol(); adjust_cursor_eol();
} // NOLINT(readability/fn_size) }
/* /*
* When the cursor is on the NUL past the end of the line and it should not be * When the cursor is on the NUL past the end of the line and it should not be

View File

@@ -3382,7 +3382,7 @@ ambw_end:
check_redraw(options[opt_idx].flags); check_redraw(options[opt_idx].flags);
return errmsg; return errmsg;
} // NOLINT(readability/fn_size) }
/// Simple int comparison function for use with qsort() /// Simple int comparison function for use with qsort()
static int int_cmp(const void *a, const void *b) static int int_cmp(const void *a, const void *b)

View File

@@ -1748,7 +1748,7 @@ static void win_update(win_T *wp, DecorProviders *providers)
if (!got_int) { if (!got_int) {
got_int = save_got_int; got_int = save_got_int;
} }
} // NOLINT(readability/fn_size) }
/// Returns width of the signcolumn that should be used for the whole window /// Returns width of the signcolumn that should be used for the whole window
/// ///

View File

@@ -3067,7 +3067,7 @@ viml_pexpr_parse_end:
} }
kvi_destroy(ast_stack); kvi_destroy(ast_stack);
return ast; return ast;
} // NOLINT(readability/fn_size) }
#undef NEW_NODE #undef NEW_NODE
#undef HL #undef HL