##// END OF EJS Templates
Add button on the SidePane widgets to open left or right inspectors
Add button on the SidePane widgets to open left or right inspectors

File last commit:

r2:451739a45362
r101:9678ebc27091
Show More
IPSIS_F11.tcl
39 lines | 1.2 KiB | application/x-tcl | TclLexer
#!/usr/bin/tclsh
# control structures should have complete curly-braced block of code
foreach fileName [getSourceFileNames] {
set state "start"
set prev ""
foreach token [getTokens $fileName 1 0 -1 -1 {for if while do leftparen rightparen leftbrace rightbrace semicolon}] {
set type [lindex $token 3]
if {$state == "control"} {
if {$type == "leftparen"} {
incr parenCount
} elseif {$type == "rightparen"} {
incr parenCount -1
if {$parenCount == 0} {
set state "expectedblock"
}
}
} elseif {$state == "expectedblock"} {
if {$type != "leftbrace"} {
set line [lindex $token 1]
report $fileName $line "full block {} expected in the control structure"
}
set state "block"
}
if {$type == "for" || $type == "if"} {
set parenCount 0
set state "control"
} elseif {$type == "do"} {
set state "expectedblock"
} elseif {$type == "while" && $prev != "rightbrace"} {
set parenCount 0
set state "control"
}
set prev $type
}
}