annotate vera/rules/T006.tcl @ 599:e531f04507aa

Irccd: move logger into libirccd, closes #740
author David Demelier <markand@malikania.fr>
date Wed, 06 Dec 2017 21:32:10 +0100
parents 6ec510722582
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
510
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #!/usr/bin/tclsh
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # Keywords return and throw should be immediately followed by a semicolon or a single space
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
3
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 foreach f [getSourceFileNames] {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 foreach t [getTokens $f 1 0 -1 -1 {return throw}] {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 set keyword [lindex $t 0]
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 set line [lindex $t 1]
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 set column [lindex $t 2]
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 set followingTokens [getTokens $f $line [expr $column + [string length $keyword]] [expr $line + 1] 0 {}]
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 if {$followingTokens == {}} {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 report $f $line "keyword '${keyword}' not immediately followed by a semicolon or a single space"
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 } else {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 set first [lindex [lindex $followingTokens 0] 0]
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 if {$first != ";" && $first != " "} {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 if {!([llength $followingTokens] >= 2 && $keyword == "throw" && $first == "(" && [lindex [lindex $followingTokens 1] 0] == ")")} {
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 report $f $line "keyword '${keyword}' not immediately followed by a semicolon or a single space"
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 }
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 }
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 }
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 }
6ec510722582 CMake: enable vera++ as code checking, closes #603
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 }