I find that the semantics of qualifier edges is not clear to me with respect to misuses. What does a missing qualifier mean? The only context I've seen this is code creating a GUI. Here, apparently, UI elements are frequently stored in fields (for later access, I suppose), but sometimes only in local variables. I don't see how either could be a violation of an API usage constraint.
Alternative encodings could be to make field access an action. Which could actually solve the constant problem, because I would assume that, if there's frequently the same constant passed to a call, the respective data node would frequently be defined by same field access (like a getter call).
I find that the semantics of qualifier edges is not clear to me with respect to misuses. What does a missing qualifier mean? The only context I've seen this is code creating a GUI. Here, apparently, UI elements are frequently stored in fields (for later access, I suppose), but sometimes only in local variables. I don't see how either could be a violation of an API usage constraint.
Alternative encodings could be to make field access an action. Which could actually solve the constant problem, because I would assume that, if there's frequently the same constant passed to a call, the respective data node would frequently be defined by same field access (like a getter call).