Mercurial > irccd
view vera/rules/T003.tcl @ 658:e0714513ed1d
CMake: move contrib to systemd, closes #786 @5m
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 27 Mar 2018 13:35:53 +0200 |
parents | 6ec510722582 |
children |
line wrap: on
line source
#!/usr/bin/tclsh # Some keywords should be followed by a single space set keywords { case class enum explicit extern goto new struct union using } proc isKeyword {s} { global keywords return [expr [lsearch $keywords $s] != -1] } set state "other" foreach f [getSourceFileNames] { foreach t [getTokens $f 1 0 -1 -1 {}] { set tokenValue [lindex $t 0] set tokenName [lindex $t 3] if {$state == "keyword"} { if {$tokenName == "space" && $tokenValue == " "} { set state "space" } else { report $f $lineNumber "keyword \'${keywordValue}\' not followed by a single space" set state "other" } } elseif {$state == "space"} { if {$tokenName == "newline"} { report $f $lineNumber "keyword \'${keywordValue}\' not followed by a single space" } set state "other" } else { if [isKeyword $tokenName] { set state "keyword" set lineNumber [lindex $t 1] set keywordValue [lindex $t 0] } } } }