home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 230.lha / ArexxFunctionHost / rexxfunchost.h < prev    next >
C/C++ Source or Header  |  1989-04-03  |  2KB  |  90 lines

  1. /*  RexxFuncHost.h   */
  2.  
  3.  
  4. /*        Copyright © 1989 by Donald T. Meyer
  5.  *        All Rights Reserved
  6.  *
  7.  *        This source code may be compiled and used in any software
  8.  *        product.
  9.  *        No portion of this source code is to be
  10.  *        re-distributed or sold for profit without the written
  11.  *        permission of the author, Donald T. Meyer.
  12.  *
  13.  *        Donald T. Meyer
  14.  *        Stormgate Software
  15.  *        4 Rustic Creek Court
  16.  *        St. Peters, MO  63376
  17.  *
  18.  *        BIX:    donmeyer
  19.  *        GEnie:    D.MEYER
  20.  *        PLINK:    Stormgate
  21.  */
  22.  
  23.  
  24. #ifndef DTM_REXXHOST_H
  25. #define DTM_REXXHOST_H
  26.  
  27.  
  28. /* Include the rexx headers we may need */
  29.  
  30. #ifndef REXX_STORAGE_H
  31. #include <rexx/storage.h>
  32. #endif
  33.  
  34. #ifndef ERR10_001
  35. #include <rexx/errors.h>
  36. #endif
  37.  
  38. #ifndef REXX_RXSLIB_H
  39. #include <rexx/rxslib.h>
  40. #endif
  41.  
  42.  
  43.  
  44. struct RexxFunction {
  45.     char    *fname;                        /* The function name. */
  46.  
  47.     void    (*func)(struct RexxMsg *);    /* Vector to the function's 'C'
  48.                                          * code.
  49.                                          */
  50.  
  51.     USHORT    argcount;                    /* Number of args expected.
  52.                                          * Set to -1 if don't care or
  53.                                          * will ascertain within the
  54.                                          * function.
  55.                                          */
  56.  
  57.     BOOL     caseflag;                    /* TRUE if we care about upper
  58.                                          * and lower case for the
  59.                                          * function name.
  60.                                          */
  61. };
  62.  
  63.  
  64.  
  65.  
  66. void SetResultString( struct RexxMsg *rexxmsg, char *string );
  67.  
  68.  
  69.  
  70.  
  71. /*------------------------------------------------------------------*/
  72. /*        Prototypes for functions in the Rexx Library                */
  73. /*------------------------------------------------------------------*/
  74.  
  75. struct RexxMsg *CreateRexxMsg( struct MsgPort *, char *, char * );
  76.  
  77. struct RexxArg *CreateArgstring( char *, ULONG );
  78.  
  79. void DeleteArgstring( struct RexxArg * );
  80.  
  81. ULONG LengthArgstring( struct RexxArg * );
  82.  
  83. void DeleteRexxMsg( struct RexxMsg * );
  84.  
  85. LONG IsRexxMsg( struct RexxMsg * );
  86.  
  87.  
  88. #endif
  89.  
  90.