home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 March / VPR9703A.ISO / VPR_DATA / DOGA / SOURCES / POLYEDIT.LZH / ML / EXTEND.C < prev    next >
C/C++ Source or Header  |  1995-03-21  |  1KB  |  85 lines

  1. /*
  2.  *        手続き、関数拡張機能
  3.  *
  4.  *        Copyright    T.Kobayashi        1994.5.2
  5.  */
  6.  
  7. #include <stdio.h>
  8. #include <string.h>
  9.  
  10. #include "parse.h"
  11. #include "exec.h"
  12.  
  13. #include "inlib.h"
  14.  
  15. /*    新しいシステム定数の設定    */
  16. void    NewConst( name, c )
  17. char    *name ;
  18. DataStruct    *c ;
  19. {
  20.     SetSystemConst( name, c );
  21. }
  22.  
  23. /*    新しいクラスの登録    */
  24. int        NewClass( name, parent )
  25. char    *name ;    /*    クラス名    */
  26. int        parent ;
  27. {
  28.     return ObjectSetClass( name, MaxFunctions, parent );
  29. }
  30.  
  31. /*    クラス名から番号を得る    */
  32. int        ClassName( name )
  33. char    *name ;
  34. {
  35.     int        i ;
  36.  
  37.     for( i = 0 ; i < MAX_CLASS ; i++ )
  38.     {
  39.         if ( strcmp( ClassList[i].name, name ) == 0 )
  40.             return i ;
  41.     }
  42.     return -1 ;
  43. }
  44.  
  45. /*    関数名から番号を得る    */
  46. int        FunctionName( name )
  47. char    *name ;
  48. {
  49.     return IdentSearch( IdentFunction, name );
  50. }
  51.  
  52. /*    新しい関数の登録    */
  53. int        NewFunction( classid, name, ptr )
  54. int        classid ;
  55. char    *name ;
  56. int        (*ptr)();
  57. {
  58.     return FunctionSet( classid, name, ptr );
  59. }
  60.  
  61. /*    新しい演算子の登録    */
  62. void    NewOperator( classid, ident, ptr )
  63. int        classid ;
  64. int        ident ;
  65. int        (*ptr)();
  66. {
  67.     OperatorSet( classid, ident, ptr );
  68. }
  69.  
  70. /*    関数呼び出し    */
  71. void    CallFunction( ident, args, arg )
  72. int        ident, args ;
  73. DataStruct    *arg ;
  74. {
  75.     CallFunctionLocal( ident, args, arg );
  76. }
  77.  
  78. /*    継承クラスの関数呼び出し    */
  79. void    CallFunctionParent( class, ident, args, arg )
  80. int        class, ident, args ;
  81. DataStruct    *arg ;
  82. {
  83.     CallFunctionLocalParent( class, ident, args, arg );
  84. }
  85.