2023-01-31 14:59 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

* include/hbapierr.h
  * src/harbour.def
  * src/rtl/errapi.c
    + added new C function:
         void hb_errReinit( PHB_ITEM pError );
      it allows to replace default error object with user custom one which
      support :Init() method

  * contrib/xhb/xhb.hbp
  + contrib/xhb/xhb.h
  + contrib/xhb/xhberror.prg
    + added code which extends Harbour error objects adding functionality
      known from xHarbour:
         oError:ProcName
         oError:ProcLine
         oError:ProcModule
      Above instance variables are initialized automatically when error
      object is created.
      To enable this functionality it's enough to add to PRG code:
         REQUEST xhb_ErrorNew

  * contrib/xhb/xhberr.prg
    * use error object :Proc*() methods if they are available
    - removed PRG version of xhb_ErrorNew()

  * contrib/xhb/xhbmemo.prg
  * contrib/xhb/xhbtedit.prg
    ! use xhb_ErrorNew() instead of ErrorNew() which does not support
      any parameters

  * include/hbapicls.h
    ; typo in comment
This commit is contained in:
Przemysław Czerpak
2023-01-31 14:59:17 +01:00
parent c95f2a7ad5
commit 807c7d8e8b
10 changed files with 102 additions and 82 deletions

View File

@@ -119,7 +119,7 @@ extern HB_EXPORT HB_USHORT hb_clsFindClass( const char * szClass, const char *
/* object management */
extern HB_EXPORT HB_USHORT hb_objGetClass( PHB_ITEM pItem ); /* get object class handle */
extern HB_EXPORT HB_USHORT hb_objSetClass( PHB_ITEM pItem, const char * szClass, const char * szFunc ); /* get object class handle using class name and class function name */
extern HB_EXPORT HB_USHORT hb_objSetClass( PHB_ITEM pItem, const char * szClass, const char * szFunc ); /* set object class handle using class name and class function name */
extern HB_EXPORT const char * hb_objGetClsName( PHB_ITEM pObject ); /* retrieves an object class name */
extern HB_EXPORT const char * hb_objGetRealClsName( PHB_ITEM pObject, const char * szString ); /* retrieves an object class name for a specific message */

View File

@@ -127,6 +127,8 @@ extern HB_EXPORT void hb_errRelease ( PHB_ITEM pError );
extern void hb_errInit ( void );
extern void hb_errExit ( void );
extern HB_EXPORT void hb_errReinit( PHB_ITEM pError );
extern HB_EXPORT PHB_ITEM hb_errLaunchSubst( PHB_ITEM pError );
extern HB_EXPORT PHB_ITEM hb_errRT_New( HB_USHORT uiSeverity,