annotate vera/rules/T003.tcl @ 114:e3b45368fd19

Docs: add intro.md
author David Demelier <markand@malikania.fr>
date Mon, 11 Sep 2017 10:35:46 +0200
parents 0edaba9986ba
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #!/usr/bin/tclsh
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # Some keywords should be followed by a single space
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
3
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 set keywords {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 case
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 class
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 enum
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 explicit
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 extern
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 goto
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 new
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 struct
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 union
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 using
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
16
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 proc isKeyword {s} {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 global keywords
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 return [expr [lsearch $keywords $s] != -1]
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
21
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 set state "other"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 foreach f [getSourceFileNames] {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 foreach t [getTokens $f 1 0 -1 -1 {}] {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 set tokenValue [lindex $t 0]
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 set tokenName [lindex $t 3]
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 if {$state == "keyword"} {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 if {$tokenName == "space" && $tokenValue == " "} {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 set state "space"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 } else {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 report $f $lineNumber "keyword \'${keywordValue}\' not followed by a single space"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 set state "other"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 } elseif {$state == "space"} {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 if {$tokenName == "newline"} {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 report $f $lineNumber "keyword \'${keywordValue}\' not followed by a single space"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 set state "other"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 } else {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 if [isKeyword $tokenName] {
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 set state "keyword"
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 set lineNumber [lindex $t 1]
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 set keywordValue [lindex $t 0]
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 }
0edaba9986ba CMake: add vera++, closes 602
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 }