ooRexx  4.2.0-source
About: ooRexx (Open Object Rexx) is a free implementation of Object Rexx. Object Rexx is an enhancement of the classic Rexx interpreter; a full-featured programming language with a human-oriented syntax.
  Fossies Dox: ooRexx-4.2.0-source.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

rexx.h File Reference
#include "rexxapitypes.h"
#include "rexxapidefs.h"
#include "rexxplatformdefs.h"
#include "rexxplatformapis.h"
Include dependency graph for rexx.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _RXSTRING
 
struct  _CONSTRXSTRING
 
struct  _RXSYSEXIT
 
struct  _SHVBLOCK
 
struct  _RexxQueueTime
 
struct  _RexxConditionData
 
struct  _RXFNC_FLAGS
 
struct  _RXFNCCAL_PARM
 
struct  _RXOFNC_FLAGS
 
struct  _RXOFNCCAL_PARM
 
struct  _RXEXF_FLAGS
 
struct  _RXEXFCAL_PARM
 
struct  _RXCMD_FLAGS
 
struct  _RXCMDHST_PARM
 
struct  _RXMSQPLL_PARM
 
struct  _RXMSQ_FLAGS
 
struct  _RXMSQPSH_PARM
 
struct  _RXMSQSIZ_PARM
 
struct  _RXMSQNAM_PARM
 
struct  _RXSIOSAY_PARM
 
struct  _RXSIOTRC_PARM
 
struct  _RXSIOTRD_PARM
 
struct  _RXSIODTR_PARM
 
struct  _RXHLT_FLAGS
 
struct  _RXHLTTST_PARM
 
struct  _RXTRC_FLAGS
 
struct  _RXTRCTST_PARM
 
struct  _RXVARNOVALUE_PARM
 
struct  _RXVALCALL_PARM
 

Macros

#define BEGIN_EXTERN_C()
 
#define END_EXTERN_C()
 
#define NO_CSTRING   NULL
 
#define NULLOBJECT   NULL
 
#define CONSTANT_RXSTRING   CONSTRXSTRING
 
#define CONSTANT_STRING   CSTRING
 
#define RXNULLSTRING(r)   ((r).strptr == NULL)
 
#define RXZEROLENSTRING(r)   ((r).strptr != NULL && (r).strlength == 0)
 
#define RXVALIDSTRING(r)   ((r).strptr != NULL && (r).strlength != 0)
 
#define RXSTRLEN(r)   (RXNULLSTRING(r) ? 0 : (r).strlength)
 
#define RXSTRPTR(r)   ((r).strptr)
 
#define MAKERXSTRING(r, p, l)   { (r).strptr = p; (r).strlength = l; }
 
#define RexxEntry   REXXENTRY
 
#define REXXSTART   RexxStart
 
#define REXXWAITFORTERMINATION   RexxWaitForTermination
 
#define REXXDIDREXXTERMINATE   RexxDidRexxTerminate
 
#define REXXSHUTDOWNAPI   RexxShutDownAPI
 
#define REXXTRANSLATEPROGRAM   RexxTranslateProgram
 
#define REXXTRANSLATEINSTOREPROGRAM   RexxTranslateInstoreProgram
 
#define REXXGETVERSIONINFORMATON   RexxGetVersionInformation
 
#define REXXREGISTERSUBCOMDLL   RexxRegisterSubcomDll
 
#define REXXREGISTERSUBCOMEXE   RexxRegisterSubcomExe
 
#define REXXQUERYSUBCOM   RexxQuerySubcom
 
#define REXXDEREGISTERSUBCOM   RexxDeregisterSubcom
 
#define REXXVARIABLEPOOL   RexxVariablePool
 
#define REXXREGISTERFUNCTIONDLL   RexxRegisterFunctionDll
 
#define REXXREGISTERFUNCTIONEXE   RexxRegisterFunctionExe
 
#define REXXDEREGISTERFUNCTION   RexxDeregisterFunction
 
#define REXXQUERYFUNCTION   RexxQueryFunction
 
#define REXXREGISTEREXITDLL   RexxRegisterExitDll
 
#define REXXREGISTEREXITEXE   RexxRegisterExitExe
 
#define REXXDEREGISTEREXIT   RexxDeregisterExit
 
#define REXXQUERYEXIT   RexxQueryExit
 
#define REXXSETHALT   RexxSetHalt
 
#define REXXSETTRACE   RexxSetTrace
 
#define REXXRESETTRACE   RexxResetTrace
 
#define REXXADDMACRO   RexxAddMacro
 
#define REXXDROPMACRO   RexxDropMacro
 
#define REXXSAVEMACROSPACE   RexxSaveMacroSpace
 
#define REXXLOADMACROSPACE   RexxLoadMacroSpace
 
#define REXXQUERYMACRO   RexxQueryMacro
 
#define REXXREORDERMACRO   RexxReorderMacro
 
#define REXXCLEARMACROSPACE   RexxClearMacroSpace
 
#define MAX_QUEUE_NAME_LENGTH   250
 

Typedefs

typedef int RexxReturnCode
 
typedef void * POINTER
 
typedef struct _RexxObjectPtr * RexxObjectPtr
 
typedef struct _RexxStringObject * RexxStringObject
 
typedef struct _RexxBufferStringObject * RexxBufferStringObject
 
typedef struct _RexxArrayObject * RexxArrayObject
 
typedef struct _RexxBufferObject * RexxBufferObject
 
typedef struct _RexxPointerObject * RexxPointerObject
 
typedef struct _RexxMethodObject * RexxMethodObject
 
typedef struct _RexxRoutineObject * RexxRoutineObject
 
typedef struct _RexxPackageObject * RexxPackageObject
 
typedef struct _RexxClassObject * RexxClassObject
 
typedef struct _RexxDirectoryObject * RexxDirectoryObject
 
typedef struct _RexxSupplierObject * RexxSupplierObject
 
typedef struct _RexxStemObject * RexxStemObject
 
typedef struct _RexxMutableBufferObject * RexxMutableBufferObject
 
typedef struct _RXSTRING RXSTRING
 
typedef struct _CONSTRXSTRING CONSTRXSTRING
 
typedef RXSTRINGPRXSTRING
 
typedef CONSTRXSTRINGPCONSTRXSTRING
 
typedef struct _RXSYSEXIT RXSYSEXIT
 
typedef RXSYSEXITPRXSYSEXIT
 
typedef struct _SHVBLOCK SHVBLOCK
 
typedef SHVBLOCKPSHVBLOCK
 
typedef char * PEXIT
 
typedef size_t stringsize_t
 
typedef ssize_t wholenumber_t
 
typedef size_t logical_t
 
typedef struct _RexxQueueTime RexxQueueTime
 
typedef struct _RexxConditionData RexxConditionData
 
typedef RexxReturnCode(REXXENTRYPFNREXXSTART) (size_t, PCONSTRXSTRING, CSTRING, PRXSTRING, CSTRING, int, PRXSYSEXIT, short *, PRXSTRING)
 
typedef void(REXXENTRYPFNREXXWAITFORTERMINATION) (void)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDIDREXXTERMINATE) (void)
 
typedef RexxReturnCode(REXXENTRYPFNREXXSHUTDOWNAPI) (void)
 
typedef RexxReturnCode(REXXENTRYPFNREXXTRANSLATEPROGRAM) (CSTRING, CSTRING, PRXSYSEXIT)
 
typedef RexxReturnCode(REXXENTRYPFNREXXTRANSLATEINSTOREPROGRAM) (CSTRING, CONSTRXSTRING *, RXSTRING *)
 
typedef char *(REXXENTRYPFNGETVERSIONINFORMATION) (void)
 
typedef RexxReturnCode REXXENTRY RexxSubcomHandler(PCONSTRXSTRING, unsigned short *, PRXSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTERSUBCOMDLL) (CSTRING, CSTRING, CSTRING, char *, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTERSUBCOMEXE) (CSTRING, REXXPFN, char *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUERYSUBCOM) (CSTRING, CSTRING, unsigned short *, char *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDEREGISTERSUBCOM) (CSTRING, CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXVARIABLEPOOL) (PSHVBLOCK)
 
typedef size_t REXXENTRY RexxRoutineHandler(CSTRING, size_t, PCONSTRXSTRING, CSTRING, PRXSTRING)
 
typedef size_t REXXENTRY RexxFunctionHandler(CSTRING, size_t, PCONSTRXSTRING, CSTRING, PRXSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTERFUNCTIONDLL) (CSTRING, CSTRING, CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTERFUNCTIONEXE) (CSTRING, REXXPFN)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDEREGISTERFUNCTION) (CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUERYFUNCTION) (CSTRING)
 
typedef struct _RXFNC_FLAGS RXFNC_FLAGS
 
typedef struct _RXFNCCAL_PARM RXFNCCAL_PARM
 
typedef struct _RXOFNC_FLAGS RXOFNC_FLAGS
 
typedef struct _RXOFNCCAL_PARM RXOFNCCAL_PARM
 
typedef struct _RXEXF_FLAGS RXEXF_FLAGS
 
typedef struct _RXEXFCAL_PARM RXEXFCAL_PARM
 
typedef struct _RXCMD_FLAGS RXCMD_FLAGS
 
typedef struct _RXCMDHST_PARM RXCMDHST_PARM
 
typedef struct _RXMSQPLL_PARM RXMSQPLL_PARM
 
typedef struct _RXMSQ_FLAGS RXMSQ_FLAGS
 
typedef struct _RXMSQPSH_PARM RXMSQPSH_PARM
 
typedef struct _RXMSQSIZ_PARM RXMSQSIZ_PARM
 
typedef struct _RXMSQNAM_PARM RXMSQNAM_PARM
 
typedef struct _RXSIOSAY_PARM RXSIOSAY_PARM
 
typedef struct _RXSIOTRC_PARM RXSIOTRC_PARM
 
typedef struct _RXSIOTRD_PARM RXSIOTRD_PARM
 
typedef struct _RXSIODTR_PARM RXSIODTR_PARM
 
typedef struct _RXHLT_FLAGS RXHLT_FLAGS
 
typedef struct _RXHLTTST_PARM RXHLTTST_PARM
 
typedef struct _RXTRC_FLAGS RXTRC_FLAGS
 
typedef struct _RXTRCTST_PARM RXTRCTST_PARM
 
typedef struct _RXVARNOVALUE_PARM RXVARNOVALUE_PARM
 
typedef struct _RXVALCALL_PARM RXVALCALL_PARM
 
typedef int REXXENTRY RexxExitHandler(int, int, PEXIT)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTEREXITDLL) (CSTRING, CSTRING, CSTRING, char *, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREGISTEREXITEXE) (CSTRING, REXXPFN, char *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDEREGISTEREXIT) (CSTRING, CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUERYEXIT) (CSTRING, CSTRING, unsigned short *, char *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXSETHALT) (process_id_t, thread_id_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXSETTRACE) (process_id_t, thread_id_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXRESETTRACE) (process_id_t, thread_id_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXADDMACRO) (CSTRING, CSTRING, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDROPMACRO) (CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXSAVEMACROSPACE) (size_t, CSTRING *, CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXLOADMACROSPACE) (size_t, CSTRING *, CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUERYMACRO) (CSTRING, unsigned short *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXREORDERMACRO) (CSTRING, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXCLEARMACROSPACE) (void)
 
typedef RexxReturnCode(REXXENTRYPFNREXXCREATEQUEUE) (char *, size_t, CSTRING, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXOPENQUEUE) (CSTRING, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUEUEEXISTS) (CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXDELETEQUEUE) (CSTRING)
 
typedef RexxReturnCode(REXXENTRYPFNREXXQUERYQUEUE) (CSTRING, size_t *)
 
typedef RexxReturnCode(REXXENTRYPFNREXXADDQUEUE) (CSTRING, PCONSTRXSTRING, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXPULLFROMQUEUE) (CSTRING, PRXSTRING, RexxQueueTime *, size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXCLEARQUEUE) (CSTRING)
 
typedef void *(REXXENTRYPFNREXXALLOCATEMEMORY) (size_t)
 
typedef RexxReturnCode(REXXENTRYPFNREXXFREEMEMORY) (void *)
 

Functions

int REXXENTRY RexxStart (size_t, PCONSTRXSTRING, CSTRING, PRXSTRING, CSTRING, int, PRXSYSEXIT, short *, PRXSTRING)
 
void REXXENTRY RexxWaitForTermination (void)
 
RexxReturnCode REXXENTRY RexxDidRexxTerminate (void)
 
RexxReturnCode REXXENTRY RexxShutDownAPI (void)
 
RexxReturnCode REXXENTRY RexxTranslateProgram (CSTRING, CSTRING, PRXSYSEXIT)
 
RexxReturnCode REXXENTRY RexxTranslateInstoreProgram (CSTRING, CONSTRXSTRING *, RXSTRING *)
 
char *REXXENTRY RexxGetVersionInformation (void)
 
RexxReturnCode REXXENTRY RexxRegisterSubcomDll (CSTRING, CSTRING, CSTRING, CSTRING, size_t)
 
RexxReturnCode REXXENTRY RexxRegisterSubcomExe (CSTRING, REXXPFN, CSTRING)
 
RexxReturnCode REXXENTRY RexxQuerySubcom (CSTRING, CSTRING, unsigned short *, char *)
 
RexxReturnCode REXXENTRY RexxDeregisterSubcom (CSTRING, CSTRING)
 
RexxReturnCode REXXENTRY RexxVariablePool (PSHVBLOCK)
 
RexxReturnCode REXXENTRY RexxRegisterFunctionDll (CSTRING, CSTRING, CSTRING)
 
RexxReturnCode REXXENTRY RexxRegisterFunctionExe (CSTRING, REXXPFN)
 
RexxReturnCode REXXENTRY RexxDeregisterFunction (CSTRING)
 
RexxReturnCode REXXENTRY RexxQueryFunction (CSTRING)
 
RexxReturnCode REXXENTRY RexxRegisterExitDll (CSTRING, CSTRING, CSTRING, CSTRING, size_t)
 
RexxReturnCode REXXENTRY RexxRegisterExitExe (CSTRING, REXXPFN, CSTRING)
 
RexxReturnCode REXXENTRY RexxDeregisterExit (CSTRING, CSTRING)
 
RexxReturnCode REXXENTRY RexxQueryExit (CSTRING, CSTRING, unsigned short *, char *)
 
RexxReturnCode REXXENTRY RexxSetHalt (process_id_t, thread_id_t)
 
RexxReturnCode REXXENTRY RexxSetTrace (process_id_t, thread_id_t)
 
RexxReturnCode REXXENTRY RexxResetTrace (process_id_t, thread_id_t)
 
RexxReturnCode REXXENTRY RexxAddMacro (CSTRING, CSTRING, size_t)
 
RexxReturnCode REXXENTRY RexxDropMacro (CSTRING)
 
RexxReturnCode REXXENTRY RexxSaveMacroSpace (size_t, CSTRING *, CSTRING)
 
RexxReturnCode REXXENTRY RexxLoadMacroSpace (size_t, CSTRING *, CSTRING)
 
RexxReturnCode REXXENTRY RexxQueryMacro (CSTRING, unsigned short *)
 
RexxReturnCode REXXENTRY RexxReorderMacro (CSTRING, size_t)
 
RexxReturnCode REXXENTRY RexxClearMacroSpace (void)
 
RexxReturnCode REXXENTRY RexxCreateQueue (char *, size_t, CSTRING, size_t *)
 
RexxReturnCode REXXENTRY RexxOpenQueue (CSTRING, size_t *)
 
RexxReturnCode REXXENTRY RexxQueueExists (CSTRING)
 
RexxReturnCode REXXENTRY RexxDeleteQueue (CSTRING)
 
RexxReturnCode REXXENTRY RexxQueryQueue (CSTRING, size_t *)
 
RexxReturnCode REXXENTRY RexxAddQueue (CSTRING, PCONSTRXSTRING, size_t)
 
RexxReturnCode REXXENTRY RexxPullFromQueue (CSTRING, PRXSTRING, RexxQueueTime *, size_t)
 
RexxReturnCode REXXENTRY RexxClearQueue (CSTRING)
 
void *REXXENTRY RexxAllocateMemory (size_t)
 
RexxReturnCode REXXENTRY RexxFreeMemory (void *)
 

Variables

const typedef char * CSTRING
 

Macro Definition Documentation

◆ BEGIN_EXTERN_C

#define BEGIN_EXTERN_C ( )

Definition at line 60 of file rexx.h.

◆ CONSTANT_RXSTRING

#define CONSTANT_RXSTRING   CONSTRXSTRING

Definition at line 167 of file rexx.h.

◆ CONSTANT_STRING

#define CONSTANT_STRING   CSTRING

Definition at line 168 of file rexx.h.

◆ END_EXTERN_C

#define END_EXTERN_C ( )

Definition at line 61 of file rexx.h.

◆ MAKERXSTRING

#define MAKERXSTRING (   r,
  p,
 
)    { (r).strptr = p; (r).strlength = l; }

Definition at line 182 of file rexx.h.

◆ MAX_QUEUE_NAME_LENGTH

#define MAX_QUEUE_NAME_LENGTH   250

Definition at line 778 of file rexx.h.

◆ NO_CSTRING

#define NO_CSTRING   NULL

Definition at line 146 of file rexx.h.

◆ NULLOBJECT

#define NULLOBJECT   NULL

Definition at line 147 of file rexx.h.

◆ REXXADDMACRO

#define REXXADDMACRO   RexxAddMacro

Definition at line 716 of file rexx.h.

◆ REXXCLEARMACROSPACE

#define REXXCLEARMACROSPACE   RexxClearMacroSpace

Definition at line 771 of file rexx.h.

◆ REXXDEREGISTEREXIT

#define REXXDEREGISTEREXIT   RexxDeregisterExit

Definition at line 660 of file rexx.h.

◆ REXXDEREGISTERFUNCTION

#define REXXDEREGISTERFUNCTION   RexxDeregisterFunction

Definition at line 442 of file rexx.h.

◆ REXXDEREGISTERSUBCOM

#define REXXDEREGISTERSUBCOM   RexxDeregisterSubcom

Definition at line 385 of file rexx.h.

◆ REXXDIDREXXTERMINATE

#define REXXDIDREXXTERMINATE   RexxDidRexxTerminate

Definition at line 296 of file rexx.h.

◆ REXXDROPMACRO

#define REXXDROPMACRO   RexxDropMacro

Definition at line 724 of file rexx.h.

◆ RexxEntry

#define RexxEntry   REXXENTRY

Definition at line 233 of file rexx.h.

◆ REXXGETVERSIONINFORMATON

#define REXXGETVERSIONINFORMATON   RexxGetVersionInformation

Definition at line 329 of file rexx.h.

◆ REXXLOADMACROSPACE

#define REXXLOADMACROSPACE   RexxLoadMacroSpace

Definition at line 744 of file rexx.h.

◆ REXXQUERYEXIT

#define REXXQUERYEXIT   RexxQueryExit

Definition at line 671 of file rexx.h.

◆ REXXQUERYFUNCTION

#define REXXQUERYFUNCTION   RexxQueryFunction

Definition at line 450 of file rexx.h.

◆ REXXQUERYMACRO

#define REXXQUERYMACRO   RexxQueryMacro

Definition at line 753 of file rexx.h.

◆ REXXQUERYSUBCOM

#define REXXQUERYSUBCOM   RexxQuerySubcom

Definition at line 375 of file rexx.h.

◆ REXXREGISTEREXITDLL

#define REXXREGISTEREXITDLL   RexxRegisterExitDll

Definition at line 641 of file rexx.h.

◆ REXXREGISTEREXITEXE

#define REXXREGISTEREXITEXE   RexxRegisterExitExe

Definition at line 651 of file rexx.h.

◆ REXXREGISTERFUNCTIONDLL

#define REXXREGISTERFUNCTIONDLL   RexxRegisterFunctionDll

Definition at line 425 of file rexx.h.

◆ REXXREGISTERFUNCTIONEXE

#define REXXREGISTERFUNCTIONEXE   RexxRegisterFunctionExe

Definition at line 434 of file rexx.h.

◆ REXXREGISTERSUBCOMDLL

#define REXXREGISTERSUBCOMDLL   RexxRegisterSubcomDll

Definition at line 352 of file rexx.h.

◆ REXXREGISTERSUBCOMEXE

#define REXXREGISTERSUBCOMEXE   RexxRegisterSubcomExe

Definition at line 363 of file rexx.h.

◆ REXXREORDERMACRO

#define REXXREORDERMACRO   RexxReorderMacro

Definition at line 763 of file rexx.h.

◆ REXXRESETTRACE

#define REXXRESETTRACE   RexxResetTrace

Definition at line 702 of file rexx.h.

◆ REXXSAVEMACROSPACE

#define REXXSAVEMACROSPACE   RexxSaveMacroSpace

Definition at line 734 of file rexx.h.

◆ REXXSETHALT

#define REXXSETHALT   RexxSetHalt

Definition at line 684 of file rexx.h.

◆ REXXSETTRACE

#define REXXSETTRACE   RexxSetTrace

Definition at line 693 of file rexx.h.

◆ REXXSHUTDOWNAPI

#define REXXSHUTDOWNAPI   RexxShutDownAPI

Definition at line 300 of file rexx.h.

◆ REXXSTART

#define REXXSTART   RexxStart

Definition at line 286 of file rexx.h.

◆ REXXTRANSLATEINSTOREPROGRAM

#define REXXTRANSLATEINSTOREPROGRAM   RexxTranslateInstoreProgram

Definition at line 322 of file rexx.h.

◆ REXXTRANSLATEPROGRAM

#define REXXTRANSLATEPROGRAM   RexxTranslateProgram

Definition at line 311 of file rexx.h.

◆ REXXVARIABLEPOOL

#define REXXVARIABLEPOOL   RexxVariablePool

Definition at line 397 of file rexx.h.

◆ REXXWAITFORTERMINATION

#define REXXWAITFORTERMINATION   RexxWaitForTermination

Definition at line 292 of file rexx.h.

◆ RXNULLSTRING

#define RXNULLSTRING (   r)    ((r).strptr == NULL)

Definition at line 177 of file rexx.h.

◆ RXSTRLEN

#define RXSTRLEN (   r)    (RXNULLSTRING(r) ? 0 : (r).strlength)

Definition at line 180 of file rexx.h.

◆ RXSTRPTR

#define RXSTRPTR (   r)    ((r).strptr)

Definition at line 181 of file rexx.h.

◆ RXVALIDSTRING

#define RXVALIDSTRING (   r)    ((r).strptr != NULL && (r).strlength != 0)

Definition at line 179 of file rexx.h.

◆ RXZEROLENSTRING

#define RXZEROLENSTRING (   r)    ((r).strptr != NULL && (r).strlength == 0)

Definition at line 178 of file rexx.h.

Typedef Documentation

◆ CONSTRXSTRING

typedef struct _CONSTRXSTRING CONSTRXSTRING

◆ logical_t

typedef size_t logical_t

Definition at line 230 of file rexx.h.

◆ PCONSTRXSTRING

Definition at line 186 of file rexx.h.

◆ PEXIT

typedef char* PEXIT

Definition at line 215 of file rexx.h.

◆ PFNGETVERSIONINFORMATION

typedef char*(REXXENTRY * PFNGETVERSIONINFORMATION) (void)

Definition at line 327 of file rexx.h.

◆ PFNREXXADDMACRO

typedef RexxReturnCode(REXXENTRY * PFNREXXADDMACRO) (CSTRING, CSTRING, size_t)

Definition at line 715 of file rexx.h.

◆ PFNREXXADDQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXADDQUEUE) (CSTRING, PCONSTRXSTRING, size_t)

Definition at line 825 of file rexx.h.

◆ PFNREXXALLOCATEMEMORY

typedef void*(REXXENTRY * PFNREXXALLOCATEMEMORY) (size_t)

Definition at line 853 of file rexx.h.

◆ PFNREXXCLEARMACROSPACE

typedef RexxReturnCode(REXXENTRY * PFNREXXCLEARMACROSPACE) (void)

Definition at line 770 of file rexx.h.

◆ PFNREXXCLEARQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXCLEARQUEUE) (CSTRING)

Definition at line 840 of file rexx.h.

◆ PFNREXXCREATEQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXCREATEQUEUE) (char *, size_t, CSTRING, size_t)

Definition at line 787 of file rexx.h.

◆ PFNREXXDELETEQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXDELETEQUEUE) (CSTRING)

Definition at line 807 of file rexx.h.

◆ PFNREXXDEREGISTEREXIT

typedef RexxReturnCode(REXXENTRY * PFNREXXDEREGISTEREXIT) (CSTRING, CSTRING)

Definition at line 659 of file rexx.h.

◆ PFNREXXDEREGISTERFUNCTION

typedef RexxReturnCode(REXXENTRY * PFNREXXDEREGISTERFUNCTION) (CSTRING)

Definition at line 441 of file rexx.h.

◆ PFNREXXDEREGISTERSUBCOM

typedef RexxReturnCode(REXXENTRY * PFNREXXDEREGISTERSUBCOM) (CSTRING, CSTRING)

Definition at line 384 of file rexx.h.

◆ PFNREXXDIDREXXTERMINATE

typedef RexxReturnCode(REXXENTRY * PFNREXXDIDREXXTERMINATE) (void)

Definition at line 295 of file rexx.h.

◆ PFNREXXDROPMACRO

typedef RexxReturnCode(REXXENTRY * PFNREXXDROPMACRO) (CSTRING)

Definition at line 723 of file rexx.h.

◆ PFNREXXFREEMEMORY

typedef RexxReturnCode(REXXENTRY * PFNREXXFREEMEMORY) (void *)

Definition at line 861 of file rexx.h.

◆ PFNREXXLOADMACROSPACE

typedef RexxReturnCode(REXXENTRY * PFNREXXLOADMACROSPACE) (size_t, CSTRING *, CSTRING)

Definition at line 743 of file rexx.h.

◆ PFNREXXOPENQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXOPENQUEUE) (CSTRING, size_t)

Definition at line 794 of file rexx.h.

◆ PFNREXXPULLFROMQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXPULLFROMQUEUE) (CSTRING, PRXSTRING, RexxQueueTime *, size_t)

Definition at line 833 of file rexx.h.

◆ PFNREXXQUERYEXIT

typedef RexxReturnCode(REXXENTRY * PFNREXXQUERYEXIT) (CSTRING, CSTRING, unsigned short *, char *)

Definition at line 670 of file rexx.h.

◆ PFNREXXQUERYFUNCTION

typedef RexxReturnCode(REXXENTRY * PFNREXXQUERYFUNCTION) (CSTRING)

Definition at line 449 of file rexx.h.

◆ PFNREXXQUERYMACRO

typedef RexxReturnCode(REXXENTRY * PFNREXXQUERYMACRO) (CSTRING, unsigned short *)

Definition at line 752 of file rexx.h.

◆ PFNREXXQUERYQUEUE

typedef RexxReturnCode(REXXENTRY * PFNREXXQUERYQUEUE) (CSTRING, size_t *)

Definition at line 816 of file rexx.h.

◆ PFNREXXQUERYSUBCOM

typedef RexxReturnCode(REXXENTRY * PFNREXXQUERYSUBCOM) (CSTRING, CSTRING, unsigned short *, char *)

Definition at line 373 of file rexx.h.

◆ PFNREXXQUEUEEXISTS

typedef RexxReturnCode(REXXENTRY * PFNREXXQUEUEEXISTS) (CSTRING)

Definition at line 801 of file rexx.h.

◆ PFNREXXREGISTEREXITDLL

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTEREXITDLL) (CSTRING, CSTRING, CSTRING, char *, size_t)

Definition at line 639 of file rexx.h.

◆ PFNREXXREGISTEREXITEXE

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTEREXITEXE) (CSTRING, REXXPFN, char *)

Definition at line 650 of file rexx.h.

◆ PFNREXXREGISTERFUNCTIONDLL

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTERFUNCTIONDLL) (CSTRING, CSTRING, CSTRING)

Definition at line 424 of file rexx.h.

◆ PFNREXXREGISTERFUNCTIONEXE

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTERFUNCTIONEXE) (CSTRING, REXXPFN)

Definition at line 433 of file rexx.h.

◆ PFNREXXREGISTERSUBCOMDLL

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTERSUBCOMDLL) (CSTRING, CSTRING, CSTRING, char *, size_t)

Definition at line 350 of file rexx.h.

◆ PFNREXXREGISTERSUBCOMEXE

typedef RexxReturnCode(REXXENTRY * PFNREXXREGISTERSUBCOMEXE) (CSTRING, REXXPFN, char *)

Definition at line 362 of file rexx.h.

◆ PFNREXXREORDERMACRO

typedef RexxReturnCode(REXXENTRY * PFNREXXREORDERMACRO) (CSTRING, size_t)

Definition at line 762 of file rexx.h.

◆ PFNREXXRESETTRACE

typedef RexxReturnCode(REXXENTRY * PFNREXXRESETTRACE) (process_id_t, thread_id_t)

Definition at line 701 of file rexx.h.

◆ PFNREXXSAVEMACROSPACE

typedef RexxReturnCode(REXXENTRY * PFNREXXSAVEMACROSPACE) (size_t, CSTRING *, CSTRING)

Definition at line 733 of file rexx.h.

◆ PFNREXXSETHALT

typedef RexxReturnCode(REXXENTRY * PFNREXXSETHALT) (process_id_t, thread_id_t)

Definition at line 683 of file rexx.h.

◆ PFNREXXSETTRACE

typedef RexxReturnCode(REXXENTRY * PFNREXXSETTRACE) (process_id_t, thread_id_t)

Definition at line 692 of file rexx.h.

◆ PFNREXXSHUTDOWNAPI

typedef RexxReturnCode(REXXENTRY * PFNREXXSHUTDOWNAPI) (void)

Definition at line 299 of file rexx.h.

◆ PFNREXXSTART

typedef RexxReturnCode(REXXENTRY * PFNREXXSTART) (size_t, PCONSTRXSTRING, CSTRING, PRXSTRING, CSTRING, int, PRXSYSEXIT, short *, PRXSTRING)

Definition at line 283 of file rexx.h.

◆ PFNREXXTRANSLATEINSTOREPROGRAM

typedef RexxReturnCode(REXXENTRY * PFNREXXTRANSLATEINSTOREPROGRAM) (CSTRING, CONSTRXSTRING *, RXSTRING *)

Definition at line 320 of file rexx.h.

◆ PFNREXXTRANSLATEPROGRAM

typedef RexxReturnCode(REXXENTRY * PFNREXXTRANSLATEPROGRAM) (CSTRING, CSTRING, PRXSYSEXIT)

Definition at line 309 of file rexx.h.

◆ PFNREXXVARIABLEPOOL

typedef RexxReturnCode(REXXENTRY * PFNREXXVARIABLEPOOL) (PSHVBLOCK)

Definition at line 396 of file rexx.h.

◆ PFNREXXWAITFORTERMINATION

typedef void(REXXENTRY * PFNREXXWAITFORTERMINATION) (void)

Definition at line 291 of file rexx.h.

◆ POINTER

typedef void* POINTER

Definition at line 79 of file rexx.h.

◆ PRXSTRING

typedef RXSTRING* PRXSTRING

Definition at line 185 of file rexx.h.

◆ PRXSYSEXIT

Definition at line 194 of file rexx.h.

◆ PSHVBLOCK

typedef SHVBLOCK* PSHVBLOCK

Definition at line 213 of file rexx.h.

◆ RexxArrayObject

typedef struct _RexxArrayObject* RexxArrayObject

Definition at line 130 of file rexx.h.

◆ RexxBufferObject

typedef struct _RexxBufferObject* RexxBufferObject

Definition at line 131 of file rexx.h.

◆ RexxBufferStringObject

typedef struct _RexxBufferStringObject* RexxBufferStringObject

Definition at line 129 of file rexx.h.

◆ RexxClassObject

typedef struct _RexxClassObject* RexxClassObject

Definition at line 136 of file rexx.h.

◆ RexxConditionData

◆ RexxDirectoryObject

typedef struct _RexxDirectoryObject* RexxDirectoryObject

Definition at line 137 of file rexx.h.

◆ RexxExitHandler

typedef int REXXENTRY RexxExitHandler(int, int, PEXIT)

Definition at line 628 of file rexx.h.

◆ RexxFunctionHandler

typedef size_t REXXENTRY RexxFunctionHandler(CSTRING, size_t, PCONSTRXSTRING, CSTRING, PRXSTRING)

Definition at line 412 of file rexx.h.

◆ RexxMethodObject

typedef struct _RexxMethodObject* RexxMethodObject

Definition at line 133 of file rexx.h.

◆ RexxMutableBufferObject

typedef struct _RexxMutableBufferObject* RexxMutableBufferObject

Definition at line 140 of file rexx.h.

◆ RexxObjectPtr

typedef struct _RexxObjectPtr* RexxObjectPtr

Definition at line 127 of file rexx.h.

◆ RexxPackageObject

typedef struct _RexxPackageObject* RexxPackageObject

Definition at line 135 of file rexx.h.

◆ RexxPointerObject

typedef struct _RexxPointerObject* RexxPointerObject

Definition at line 132 of file rexx.h.

◆ RexxQueueTime

typedef struct _RexxQueueTime RexxQueueTime

◆ RexxReturnCode

typedef int RexxReturnCode

Definition at line 73 of file rexx.h.

◆ RexxRoutineHandler

typedef size_t REXXENTRY RexxRoutineHandler(CSTRING, size_t, PCONSTRXSTRING, CSTRING, PRXSTRING)

Definition at line 406 of file rexx.h.

◆ RexxRoutineObject

typedef struct _RexxRoutineObject* RexxRoutineObject

Definition at line 134 of file rexx.h.

◆ RexxStemObject

typedef struct _RexxStemObject* RexxStemObject

Definition at line 139 of file rexx.h.

◆ RexxStringObject

typedef struct _RexxStringObject* RexxStringObject

Definition at line 128 of file rexx.h.

◆ RexxSubcomHandler

typedef RexxReturnCode REXXENTRY RexxSubcomHandler(PCONSTRXSTRING, unsigned short *, PRXSTRING)

Definition at line 337 of file rexx.h.

◆ RexxSupplierObject

typedef struct _RexxSupplierObject* RexxSupplierObject

Definition at line 138 of file rexx.h.

◆ RXCMD_FLAGS

typedef struct _RXCMD_FLAGS RXCMD_FLAGS

◆ RXCMDHST_PARM

typedef struct _RXCMDHST_PARM RXCMDHST_PARM

◆ RXEXF_FLAGS

typedef struct _RXEXF_FLAGS RXEXF_FLAGS

◆ RXEXFCAL_PARM

typedef struct _RXEXFCAL_PARM RXEXFCAL_PARM

◆ RXFNC_FLAGS

typedef struct _RXFNC_FLAGS RXFNC_FLAGS

◆ RXFNCCAL_PARM

typedef struct _RXFNCCAL_PARM RXFNCCAL_PARM

◆ RXHLT_FLAGS

typedef struct _RXHLT_FLAGS RXHLT_FLAGS

◆ RXHLTTST_PARM

typedef struct _RXHLTTST_PARM RXHLTTST_PARM

◆ RXMSQ_FLAGS

typedef struct _RXMSQ_FLAGS RXMSQ_FLAGS

◆ RXMSQNAM_PARM

typedef struct _RXMSQNAM_PARM RXMSQNAM_PARM

◆ RXMSQPLL_PARM

typedef struct _RXMSQPLL_PARM RXMSQPLL_PARM

◆ RXMSQPSH_PARM

typedef struct _RXMSQPSH_PARM RXMSQPSH_PARM

◆ RXMSQSIZ_PARM

typedef struct _RXMSQSIZ_PARM RXMSQSIZ_PARM

◆ RXOFNC_FLAGS

typedef struct _RXOFNC_FLAGS RXOFNC_FLAGS

◆ RXOFNCCAL_PARM

◆ RXSIODTR_PARM

typedef struct _RXSIODTR_PARM RXSIODTR_PARM

◆ RXSIOSAY_PARM

typedef struct _RXSIOSAY_PARM RXSIOSAY_PARM

◆ RXSIOTRC_PARM

typedef struct _RXSIOTRC_PARM RXSIOTRC_PARM

◆ RXSIOTRD_PARM

typedef struct _RXSIOTRD_PARM RXSIOTRD_PARM

◆ RXSTRING

typedef struct _RXSTRING RXSTRING

◆ RXSYSEXIT

typedef struct _RXSYSEXIT RXSYSEXIT

◆ RXTRC_FLAGS

typedef struct _RXTRC_FLAGS RXTRC_FLAGS

◆ RXTRCTST_PARM

typedef struct _RXTRCTST_PARM RXTRCTST_PARM

◆ RXVALCALL_PARM

◆ RXVARNOVALUE_PARM

◆ SHVBLOCK

typedef struct _SHVBLOCK SHVBLOCK

◆ stringsize_t

typedef size_t stringsize_t

Definition at line 228 of file rexx.h.

◆ wholenumber_t

typedef ssize_t wholenumber_t

Definition at line 229 of file rexx.h.

Function Documentation

◆ RexxAddMacro()

RexxReturnCode REXXENTRY RexxAddMacro ( CSTRING  ,
CSTRING  ,
size_t   
)

◆ RexxAddQueue()

RexxReturnCode REXXENTRY RexxAddQueue ( CSTRING  ,
PCONSTRXSTRING  ,
size_t   
)

Referenced by main(), push(), and rexx_add_queue().

◆ RexxAllocateMemory()

void* REXXENTRY RexxAllocateMemory ( size_t  )

◆ RexxClearMacroSpace()

RexxReturnCode REXXENTRY RexxClearMacroSpace ( void  )

Definition at line 113 of file MacroSpaceApi.cpp.

References ENTER_REXX_API, EXIT_REXX_API, and MacroSpaceManager.

◆ RexxClearQueue()

RexxReturnCode REXXENTRY RexxClearQueue ( CSTRING  )

Referenced by main(), and RexxMethod0().

◆ RexxCreateQueue()

RexxReturnCode REXXENTRY RexxCreateQueue ( char *  ,
size_t  ,
CSTRING  ,
size_t *   
)

Referenced by RexxMethod1().

◆ RexxDeleteQueue()

RexxReturnCode REXXENTRY RexxDeleteQueue ( CSTRING  )

Referenced by RexxMethod1().

◆ RexxDeregisterExit()

RexxReturnCode REXXENTRY RexxDeregisterExit ( CSTRING  ,
CSTRING   
)

◆ RexxDeregisterFunction()

◆ RexxDeregisterSubcom()

RexxReturnCode REXXENTRY RexxDeregisterSubcom ( CSTRING  ,
CSTRING   
)

Referenced by main().

◆ RexxDidRexxTerminate()

RexxReturnCode REXXENTRY RexxDidRexxTerminate ( void  )

Test if the interpreter environment has terminated. This is a nop in 4.0 since the APIs do the proper thing with respect to threading termination. This is maintained solely for binary compatibility.

Returns
always returns true

Definition at line 441 of file InterpreterAPI.cpp.

◆ RexxDropMacro()

RexxReturnCode REXXENTRY RexxDropMacro ( CSTRING  )

◆ RexxFreeMemory()

◆ RexxGetVersionInformation()

char* REXXENTRY RexxGetVersionInformation ( void  )

Retrieve the interpreter version information.

Returns

Definition at line 233 of file InterpreterAPI.cpp.

References SystemInterpreter::allocateResultMemory(), and build().

Referenced by main().

◆ RexxLoadMacroSpace()

RexxReturnCode REXXENTRY RexxLoadMacroSpace ( size_t  ,
CSTRING ,
CSTRING   
)

◆ RexxOpenQueue()

RexxReturnCode REXXENTRY RexxOpenQueue ( CSTRING  ,
size_t *   
)

Referenced by RexxMethod1().

◆ RexxPullFromQueue()

RexxReturnCode REXXENTRY RexxPullFromQueue ( CSTRING  ,
PRXSTRING  ,
RexxQueueTime ,
size_t   
)

Referenced by pull(), RexxMethod0(), and RexxPullQueue().

◆ RexxQueryExit()

RexxReturnCode REXXENTRY RexxQueryExit ( CSTRING  ,
CSTRING  ,
unsigned short *  ,
char *   
)

◆ RexxQueryFunction()

◆ RexxQueryMacro()

◆ RexxQueryQueue()

RexxReturnCode REXXENTRY RexxQueryQueue ( CSTRING  ,
size_t *   
)

Referenced by main(), queued(), and RexxMethod0().

◆ RexxQuerySubcom()

RexxReturnCode REXXENTRY RexxQuerySubcom ( CSTRING  ,
CSTRING  ,
unsigned short *  ,
char *   
)

Referenced by main().

◆ RexxQueueExists()

RexxReturnCode REXXENTRY RexxQueueExists ( CSTRING  )

Referenced by RexxMethod1().

◆ RexxRegisterExitDll()

RexxReturnCode REXXENTRY RexxRegisterExitDll ( CSTRING  ,
CSTRING  ,
CSTRING  ,
CSTRING  ,
size_t   
)

◆ RexxRegisterExitExe()

RexxReturnCode REXXENTRY RexxRegisterExitExe ( CSTRING  ,
REXXPFN  ,
CSTRING   
)

◆ RexxRegisterFunctionDll()

◆ RexxRegisterFunctionExe()

RexxReturnCode REXXENTRY RexxRegisterFunctionExe ( CSTRING  ,
REXXPFN   
)

◆ RexxRegisterSubcomDll()

RexxReturnCode REXXENTRY RexxRegisterSubcomDll ( CSTRING  ,
CSTRING  ,
CSTRING  ,
CSTRING  ,
size_t   
)

Referenced by main().

◆ RexxRegisterSubcomExe()

RexxReturnCode REXXENTRY RexxRegisterSubcomExe ( CSTRING  ,
REXXPFN  ,
CSTRING   
)

Referenced by hostemu_loader().

◆ RexxReorderMacro()

RexxReturnCode REXXENTRY RexxReorderMacro ( CSTRING  ,
size_t   
)

◆ RexxResetTrace()

RexxReturnCode REXXENTRY RexxResetTrace ( process_id_t  procid,
thread_id_t  threadid 
)

The compatibility stub for the reset trace API.

Parameters
procidThe target process id (ignored).
threadidThe thread id of the target thread.
Returns
The success/failure indicator.

Definition at line 363 of file InterpreterAPI.cpp.

References RexxResetThreadTrace().

Referenced by GrxHost().

◆ RexxSaveMacroSpace()

RexxReturnCode REXXENTRY RexxSaveMacroSpace ( size_t  ,
CSTRING ,
CSTRING   
)

◆ RexxSetHalt()

RexxReturnCode REXXENTRY RexxSetHalt ( process_id_t  procid,
thread_id_t  threadid 
)

Compatibility function for doing a RexxHaltThread().

Parameters
procidThe process id (ignored).
threadidThe target threadid
Returns
the success/failure return code.

Definition at line 293 of file InterpreterAPI.cpp.

References RexxHaltThread().

Referenced by GrxHost().

◆ RexxSetTrace()

RexxReturnCode REXXENTRY RexxSetTrace ( process_id_t  procid,
thread_id_t  threadid 
)

Compatibility stub for the old signature of RexxSetTrace.

Parameters
procidThe process id (ignored).
threadidThe target thread identifier.
Returns
the success/failure return code.

Definition at line 349 of file InterpreterAPI.cpp.

References RexxSetThreadTrace().

Referenced by GrxHost().

◆ RexxShutDownAPI()

RexxReturnCode REXXENTRY RexxShutDownAPI ( void  )

Shutdown the API subsystem. This is a nop in 4.0. This is maintained solely for binary compatibility.

Returns
always returns true

Definition at line 588 of file RegistrationAPI.cpp.

◆ RexxStart()

int REXXENTRY RexxStart ( size_t  ,
PCONSTRXSTRING  ,
CSTRING  ,
PRXSTRING  ,
CSTRING  ,
int  ,
PRXSYSEXIT  ,
short *  ,
PRXSTRING   
)

Referenced by ApiRexxStart(), and main().

◆ RexxTranslateInstoreProgram()

RexxReturnCode REXXENTRY RexxTranslateInstoreProgram ( CSTRING  ,
CONSTRXSTRING ,
RXSTRING  
)

◆ RexxTranslateProgram()

RexxReturnCode REXXENTRY RexxTranslateProgram ( CSTRING  ,
CSTRING  ,
PRXSYSEXIT   
)

Referenced by main().

◆ RexxVariablePool()

RexxReturnCode REXXENTRY RexxVariablePool ( PSHVBLOCK  pshvblock)

Main entry point for processing variable pool requests

Parameters
pshvblockThe shaved variable block chain for the request.
Returns
The composite request return code.

Definition at line 392 of file InterpreterAPI.cpp.

References NativeContextBlock::self, and RexxNativeActivation::variablePoolInterface().

Referenced by Aspi_Fill_REXX_Variable_Pool(), Aspi_Read_All_Elements_Of_A_Specific_Stem_From_REXX_VP(), Aspi_Read_All_Variables_From_REXX_VP(), FetchRexxVar(), and SetRexxVar().

◆ RexxWaitForTermination()

void REXXENTRY RexxWaitForTermination ( void  )

Wait for Rexx termination. This is a nop in 4.0 since the APIs do the proper thing with respect to threading termination. This is maintained solely for binary compatibility.

Returns

Definition at line 428 of file InterpreterAPI.cpp.

Variable Documentation

◆ CSTRING