home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / C / Samples / CSAPE32.ARJ / SOURCE / CSSRC / FSYM.C < prev    next >
C/C++ Source or Header  |  1990-09-08  |  2KB  |  82 lines

  1. /*
  2.     fsym.c     6/13/88  funcs list for use with sed files 
  3.  
  4.     % fsym_Find*
  5.  
  6.     C-scape 3.2
  7.     Copyright (c) 1988, 1989 by Oakland Group, Inc.
  8.     ALL RIGHTS RESERVED.
  9.  
  10.     Revision History:
  11.     -----------------
  12.      7/22/89 jdc    added fsym_FindNameFunc, fsym_FindNamePtr
  13.      8/08/89 jdc    added string_funcs return in fsym_FindPtr
  14.      8/09/89 jdc    changed oslist_GetSym to oslist_Get
  15.      1/21/90 jdc    changed oslist stuff
  16.      1/24/90 jdc    preened
  17.      3/28/90 jmd    ansi-fied
  18.      9/07/90 jmd    renamed oslist funcs
  19. */
  20.  
  21. #include "sed.h"
  22. #include "fsymdecl.h"
  23. #include "winspriv.h"
  24.  
  25. char *fsym_FindNameFunc(oslist_type list, VOID_FPTR fptr)
  26. /*
  27. */
  28. {
  29.     unsigned int i;
  30.     int h;
  31.  
  32.     if (list != NULL) {
  33.         for (i = 0; i < oslist_GetSize(list); i++) {
  34.  
  35.             h = oslist_GetAlphaHandle(list, i);
  36.             if (fptr == *((VOID_FPTR *)oslist_GetData(list, h))) {
  37.                 return(oslist_GetSym(list, h));
  38.             }
  39.         }
  40.     }
  41.     return(NULL);
  42. }
  43.  
  44. char *fsym_FindNamePtr(oslist_type list, VOID *ptr)
  45. /*
  46. */
  47. {
  48.     unsigned int i;
  49.     int h;
  50.  
  51.     if (list != NULL) {
  52.         for (i = 0; i < oslist_GetSize(list); i++) {
  53.  
  54.             h = oslist_GetAlphaHandle(list, i);
  55.             if (ptr == *((VOID **)oslist_GetData(list, h))) {
  56.                 return(oslist_GetSym(list, h));
  57.             }
  58.         }
  59.     }
  60.     return(NULL);
  61. }
  62.  
  63. VOID_FPTR fsym_FindFunc(oslist_type list, char *name, int *handlep)
  64. {
  65.     if (list == NULL
  66.         || (*handlep = oslist_FindHandle(list, name)) == OSLIST_BADNAME) {
  67.  
  68.         return(FNULL);
  69.     }
  70.     return(*((VOID_FPTR *)oslist_GetData(list, *handlep)));
  71. }
  72.  
  73. VOID *fsym_FindPtr(oslist_type list, char *name, int *handlep)
  74. {
  75.     if (list == NULL
  76.         || (*handlep = oslist_FindHandle(list, name)) == OSLIST_BADNAME) {
  77.  
  78.         return(NULL);
  79.     }
  80.     return(*((VOID **)oslist_GetData(list, *handlep)));
  81. }
  82.