Files
codeql/python/ql/test/library-tests/state_tracking/Lib.qll
Taus Brock-Nannestad f07a7bf8cf Python: Autoformat everything using qlformat.
Will need subsequent PRs fixing up test failures (due to deprecated
methods moving around), but other than that everything should be
straight-forward.
2020-07-07 15:43:52 +02:00

19 lines
561 B
Plaintext

import python
import semmle.python.dataflow.StateTracking
predicate callTo(CallNode call, string name) { call.getFunction().(NameNode).getId() = name }
class Initialized extends TrackableState {
Initialized() { this = "initialized" }
override predicate startsAt(ControlFlowNode f) { callTo(f, "initialize") }
}
class Frobnicated extends TrackableState {
Frobnicated() { this = "frobnicated" }
override predicate startsAt(ControlFlowNode f) { callTo(f, "frobnicate") }
override predicate endsAt(ControlFlowNode f) { callTo(f, "defrobnicate") }
}