This proposal introduces declare() annotations for helping static analysis tools understand NSE functions. There are two main categories:
-
Declarations for callers of NSE functions. These are mainly meant as escape hatches that allow users to silence spurious diagnostics, when NSE functions are missing annotations.
-
Declarations for authors of NSE functions. These annotations declare the evaluation behaviour of one or more parameters.