-
在tinyos的许多程序中都可以见到ONE或者ONE_NOK等修饰符,这些修饰符用于标注变量使得编译器能适当地进行静态和动态的检查。在NesC程序中,这些标注用于接口文件或者全局变量/局部变量。
ONE
A pointer that always refers to a single object, similar to a C++ reference.
-
ONE_NOK
- Same as ONE but may be NULL.
-
COUNT(n)
- A pointer that always refers to a block of at least n objects.
-
COUNT_NOK(n)
- Same as COUNT but may be NULL.
-
BND(n,m)
- A pointer p such that n≤p<m, and that is aligned with respect to n and m.
-
BND_NOK(n,m)
- Same as BND but may be NULL.
-
TCAST(type,expr)
- A trusted cast, which tells Deputy to just trust the programmer. This is needed to perform casts that are safe, but are beyond the reach of Deputy's type system. Pointer casts in the network stack (e.g. getHeader() and getFooter() code) tend to fall into this category.
-
TRUSTEDBLOCK
-
Code that is completely trusted (i.e., ignored by Deputy). This is used in very few places, and should be avoided when possible.
方便大家的交流,加QQ群180839287