Module Name:    src
Committed By:   rillig
Date:           Sun Jun 13 19:50:18 UTC 2021

Modified Files:
        src/tests/lib/libcurses/slave: lint.lua

Log Message:
tests/libcurses: make error handling in the linter simpler


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/lib/libcurses/slave/lint.lua

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/lib/libcurses/slave/lint.lua
diff -u src/tests/lib/libcurses/slave/lint.lua:1.5 src/tests/lib/libcurses/slave/lint.lua:1.6
--- src/tests/lib/libcurses/slave/lint.lua:1.5	Sun Jun 13 19:41:12 2021
+++ src/tests/lib/libcurses/slave/lint.lua	Sun Jun 13 19:50:18 2021
@@ -1,5 +1,5 @@
 #! /usr/bin/lua
--- $NetBSD: lint.lua,v 1.5 2021/06/13 19:41:12 rillig Exp $
+-- $NetBSD: lint.lua,v 1.6 2021/06/13 19:50:18 rillig Exp $
 
 --[[
 
@@ -24,18 +24,10 @@ local function load_lines(fname)
   return lines
 end
 
-
-local function new_errors()
-  local errors = {}
-  errors.add = function(self, fmt, ...)
-    table.insert(self, string.format(fmt, ...))
-  end
-  errors.print = function(self)
-    for _, msg in ipairs(self) do
-      print(msg)
-    end
-  end
-  return errors
+local had_errors = false
+local function print_error(fmt, ...)
+  print(fmt:format(...))
+  had_errors = true
 end
 
 
@@ -46,7 +38,7 @@ end
 
 
 -- After each macro ARGC, there must be the corresponding macros for ARG.
-local function check_args(errors)
+local function check_args()
   local fname = "curses_commands.c"
   local lines = load_lines(fname)
   local curr_argc, curr_arg ---@type number|nil, number|nil
@@ -66,9 +58,9 @@ local function check_args(errors)
         curr_argc, curr_arg = nil, nil
       end
     elseif line_arg then
-      errors:add("%s:%d: ARG without preceding ARGC", fname, lineno)
+      print_error("%s:%d: ARG without preceding ARGC", fname, lineno)
     elseif curr_arg then
-      errors:add("%s:%d: expecting ARG %d, got %s",
+      print_error("%s:%d: expecting ARG %d, got %s",
         fname, lineno, curr_arg, line)
       curr_argc, curr_arg = nil, nil
     end
@@ -77,13 +69,5 @@ local function check_args(errors)
   end
 end
 
-
-local function main(arg)
-  local errors = new_errors()
-  check_args(errors)
-  errors:print()
-  return #errors == 0
-end
-
-
-os.exit(main(arg))
+check_args()
+os.exit(not had_errors)

Reply via email to