ExitHandler Class Reference

#include <ExitHandler.hpp>

Public Member Functions

 ExitHandler ()
 
void setEntryPoint (REXXPFN e)
 
bool isEnabled ()
 
void disable ()
 
int call (RexxActivity *activity, RexxActivation *activation, int major, int minor, void *parms)
 
ExitHandleroperator= (ExitHandler &o)
 
void resolve (const char *name)
 
void resolve (RexxContextExitHandler *handler)
 

Protected Types

enum  ExitType { UNRESOLVED , REGISTERED_NAME , DIRECT }
 

Protected Attributes

REXXPFN entryPoint
 
ExitType type
 

Detailed Description

Definition at line 52 of file ExitHandler.hpp.

Member Enumeration Documentation

◆ ExitType

enum ExitHandler::ExitType
protected
Enumerator
UNRESOLVED 
REGISTERED_NAME 
DIRECT 

Definition at line 80 of file ExitHandler.hpp.

Constructor & Destructor Documentation

◆ ExitHandler()

ExitHandler::ExitHandler ( )
inline

Definition at line 55 of file ExitHandler.hpp.

References type, and UNRESOLVED.

Member Function Documentation

◆ call()

int ExitHandler::call ( RexxActivity activity,
RexxActivation activation,
int  function,
int  subfunction,
void *  parms 
)

Call an exit

Parameters
activityThe current activity.
activationThe top-most activation.
functionThe exit major function code.
subfunctionThe exit minor function code.
parmsThe parameter block passed to the exit.
Returns
The exit handler return code.

Definition at line 59 of file ExitHandler.cpp.

References entryPoint, ExitHandlerDispatcher::rc, REGISTERED_NAME, RexxActivity::run(), and type.

Referenced by RexxActivity::callExit().

◆ disable()

void ExitHandler::disable ( )
inline

Definition at line 62 of file ExitHandler.hpp.

References entryPoint.

Referenced by RexxActivity::disableExit().

◆ isEnabled()

bool ExitHandler::isEnabled ( )
inline

Definition at line 57 of file ExitHandler.hpp.

References entryPoint.

Referenced by RexxActivity::isExitEnabled().

◆ operator=()

ExitHandler& ExitHandler::operator= ( ExitHandler o)
inline

Definition at line 68 of file ExitHandler.hpp.

References entryPoint, and type.

◆ resolve() [1/2]

void ExitHandler::resolve ( const char *  name)

Resolve a classic-style exit handler to the actual target entry point address and invocation style.

Parameters
nameThe registered exit name.

Definition at line 86 of file ExitHandler.cpp.

References entryPoint, REGISTERED_NAME, RexxResolveExit(), and type.

Referenced by RexxActivity::setExitHandler(), and InterpreterInstance::setExitHandler().

◆ resolve() [2/2]

void ExitHandler::resolve ( RexxContextExitHandler handler)

Resolve a classic-style exit handler to the actual target entry point address and invocation style.

Parameters
nameThe registered exit name.

Definition at line 99 of file ExitHandler.cpp.

References DIRECT, entryPoint, and type.

◆ setEntryPoint()

void ExitHandler::setEntryPoint ( REXXPFN  e)
inline

Definition at line 56 of file ExitHandler.hpp.

References entryPoint.

Referenced by RexxActivity::setExitHandler(), and InterpreterInstance::setExitHandler().

Member Data Documentation

◆ entryPoint

REXXPFN ExitHandler::entryPoint
protected

Definition at line 87 of file ExitHandler.hpp.

Referenced by call(), disable(), isEnabled(), operator=(), resolve(), and setEntryPoint().

◆ type

ExitType ExitHandler::type
protected

Definition at line 88 of file ExitHandler.hpp.

Referenced by call(), ExitHandler(), operator=(), and resolve().


The documentation for this class was generated from the following files: