A RexxMethodContext object is included as an argument to any native C++ method defined in external libraries. The method context provides services that are specific to a method call, including:
Accessing method-specific values such as SELF, SUPER, etc.
Manipulating object instance variables
Manipulating GUARD state
Locating classes defined in the method's package scope
In addition to the method-specific functions, the RexxMethodContext object has an embedded a RexxThreadContext object created specifically for this environment. The RexxThreadContext provides a large number of additional methods to the method environment.
API calls made using the RexxMethodContext APIs may cause Rexx syntax errors or other condition to be raised. These calls are invoked as if the current context is operating with SIGNAL ON ALL enabled. Any conditions will be trapped and held in a pending condition until the current context returns. At the return, if a condition is still pending, the appropriate condition is reraised in the caller's context. These errors can be checked using the CheckCondition() API, and pending conditions can be cancelled using ClearCondition().