@Target(value={METHOD,CONSTRUCTOR})
public @interface EnsuresCalledMethods
Consider the following method:
@EnsuresCalledMethods(value = "#1", methods = "m")
public void callM(T t) { ... }
This method guarantees that t.m() is always called before the method returns.