mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 19:38:20 +00:00
gen_events.lua: define NUM_EVENTS as an enum value
Fix PVS warnings: fileio.c:7293 Medium V547 Expression is always true. fileio.c:7351 Medium V547 Expression 'event == 100' is always false. event_name2nr returns event_T, so PVS infers that nothing outside of that range could possibly be returned.
This commit is contained in:
@@ -25,25 +25,22 @@ static const struct event_name {
|
|||||||
} event_names[] = {]])
|
} event_names[] = {]])
|
||||||
|
|
||||||
for i, event in ipairs(events) do
|
for i, event in ipairs(events) do
|
||||||
if i > 1 then
|
enum_tgt:write(('\n EVENT_%s = %u,'):format(event:upper(), i - 1))
|
||||||
comma = ',\n'
|
names_tgt:write(('\n {%u, "%s", EVENT_%s},'):format(#event, event, event:upper()))
|
||||||
else
|
if i == #events then -- Last item.
|
||||||
comma = '\n'
|
enum_tgt:write(('\n NUM_EVENTS = %u,'):format(i))
|
||||||
end
|
end
|
||||||
enum_tgt:write(('%s EVENT_%s = %u'):format(comma, event:upper(), i - 1))
|
|
||||||
names_tgt:write(('%s {%u, "%s", EVENT_%s}'):format(comma, #event, event, event:upper()))
|
|
||||||
end
|
end
|
||||||
|
|
||||||
for alias, event in pairs(aliases) do
|
for alias, event in pairs(aliases) do
|
||||||
names_tgt:write((',\n {%u, "%s", EVENT_%s}'):format(#alias, alias, event:upper()))
|
names_tgt:write(('\n {%u, "%s", EVENT_%s},'):format(#alias, alias, event:upper()))
|
||||||
end
|
end
|
||||||
|
|
||||||
names_tgt:write(',\n {0, NULL, (event_T)0}')
|
names_tgt:write('\n {0, NULL, (event_T)0},')
|
||||||
|
|
||||||
enum_tgt:write('\n} event_T;\n')
|
enum_tgt:write('\n} event_T;\n')
|
||||||
names_tgt:write('\n};\n')
|
names_tgt:write('\n};\n')
|
||||||
|
|
||||||
enum_tgt:write(('\n#define NUM_EVENTS %u\n'):format(#events))
|
|
||||||
names_tgt:write('\nstatic AutoPat *first_autopat[NUM_EVENTS] = {\n ')
|
names_tgt:write('\nstatic AutoPat *first_autopat[NUM_EVENTS] = {\n ')
|
||||||
line_len = 1
|
line_len = 1
|
||||||
for i = 1,((#events) - 1) do
|
for i = 1,((#events) - 1) do
|
||||||
|
Reference in New Issue
Block a user