2006-07-07 18:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
* harbour/include/hbvmpub.h
* harbour/source/vm/classes.c
+ added HB_ARRAY_OBJ() and changed HB_IS_OBJECT() to use it
instead of HB_OBJ_CLASS() - it allows to use HB_IS_OBJECT()
without including hbapicls.h
This commit is contained in:
@@ -8,6 +8,14 @@
|
||||
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
|
||||
*/
|
||||
|
||||
! AFIELDS() made fully CA-Cl*pper compatible.
|
||||
|
||||
* harbour/contrib/libct/ctc.c
|
||||
! Warning fixed.
|
||||
|
||||
2006-07-07 18:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
|
||||
* harbour/include/hbapi.h
|
||||
* harbour/include/hbvmpub.h
|
||||
* harbour/source/vm/classes.c
|
||||
+ added HB_ARRAY_OBJ() and changed HB_IS_OBJECT() to use it
|
||||
instead of HB_OBJ_CLASS() - it allows to use HB_IS_OBJECT()
|
||||
|
||||
@@ -140,7 +140,7 @@ HB_EXTERN_BEGIN
|
||||
#define HB_IS_COMPLEX( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 )
|
||||
#define HB_IS_GCITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_GCITEM ) != 0 )
|
||||
#define HB_IS_BADITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 && ( HB_ITEM_TYPE( p ) & ~( HB_IT_COMPLEX | HB_IT_MEMOFLAG ) ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_OBJ_CLASS( p ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_ARRAY_OBJ( p ) )
|
||||
#define HB_IS_NUMBER( p ) HB_IS_NUMERIC( p )
|
||||
|
||||
#elif 0
|
||||
@@ -170,7 +170,7 @@ HB_EXTERN_BEGIN
|
||||
#define HB_IS_COMPLEX( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 )
|
||||
#define HB_IS_GCITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_GCITEM ) != 0 )
|
||||
#define HB_IS_BADITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 && ( HB_ITEM_TYPE( p ) & ~( HB_IT_COMPLEX | HB_IT_MEMOFLAG ) ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_OBJ_CLASS( p ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_ARRAY_OBJ( p ) )
|
||||
#define HB_IS_NUMBER( p ) HB_IS_NUMERIC( p )
|
||||
|
||||
#else
|
||||
@@ -198,7 +198,7 @@ HB_EXTERN_BEGIN
|
||||
#define HB_IS_COMPLEX( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 )
|
||||
#define HB_IS_GCITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_GCITEM ) != 0 )
|
||||
#define HB_IS_BADITEM( p ) ( ( HB_ITEM_TYPE( p ) & HB_IT_COMPLEX ) != 0 && ( HB_ITEM_TYPE( p ) & ~( HB_IT_COMPLEX | HB_IT_MEMOFLAG ) ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_OBJ_CLASS( p ) != 0 )
|
||||
#define HB_IS_OBJECT( p ) ( HB_IS_ARRAY( p ) && HB_ARRAY_OBJ( p ) )
|
||||
#define HB_IS_NUMBER( p ) HB_IS_NUMERIC( p )
|
||||
|
||||
#endif
|
||||
|
||||
@@ -63,6 +63,7 @@ struct _HB_SYMB;
|
||||
|
||||
# define HB_ITEM_TYPE( p ) ( ( p )->type )
|
||||
# define HB_OBJ_CLASS( p ) ( ( p )->item.asArray.value->uiClass )
|
||||
# define HB_ARRAY_OBJ( p ) ( ( p )->item.asArray.value->uiClass != 0 )
|
||||
|
||||
# if defined(__GNUC__)
|
||||
# define HB_ITEM_NIL { HB_IT_NIL, {} }
|
||||
@@ -122,6 +123,7 @@ struct _HB_SYMB;
|
||||
/* # define HB_ITEM_TYPE( p ) ( hb_itemType( p ) ) */
|
||||
|
||||
# define HB_OBJ_CLASS( p ) ( hb_objGetClass( p ) )
|
||||
# define HB_ARRAY_OBJ( p ) ( hb_arrayIsObject( pSrcArray ) )
|
||||
|
||||
/* basic types */
|
||||
typedef void * PHB_ITEM;
|
||||
|
||||
@@ -1895,7 +1895,7 @@ HB_FUNC( __OBJCLONE )
|
||||
|
||||
if( pSrcObject )
|
||||
{
|
||||
pDstObject= hb_arrayClone( pSrcObject ) ;
|
||||
pDstObject= hb_arrayClone( pSrcObject );
|
||||
|
||||
/* pDstObject->item.asArray.value->puiClsTree = NULL; */
|
||||
/* pDstObject->item.asArray.value->puiClsTree = ( USHORT * ) hb_xgrab( sizeof( USHORT ) ); */
|
||||
|
||||
Reference in New Issue
Block a user