+added case-insensitive type name string comparison support.
This commit is contained in:
parent
eeff6d28d2
commit
42a602d8a3
1
HISTORY
1
HISTORY
@ -1,5 +1,6 @@
|
||||
Jan. 1 2016 Version 1.2
|
||||
Added a new sample script source file
|
||||
Added case-insensitive type name string comparison support
|
||||
|
||||
Dec. 30 2015
|
||||
Improved error handling with sub routine and class
|
||||
|
@ -1146,10 +1146,18 @@ static char* _extract_string(_object_t* obj);
|
||||
case _DT_DICT: \
|
||||
_gc_add(&(__o)->data.dict->ref, (__o)->data.dict, (__g)); \
|
||||
break;
|
||||
# define _UNREF_COLL_IT(__o) \
|
||||
case _DT_LIST_IT: \
|
||||
_destroy_list_it(obj->data.list_it); \
|
||||
break; \
|
||||
case _DT_DICT_IT: \
|
||||
_destroy_dict_it(obj->data.dict_it); \
|
||||
break;
|
||||
#else /* MB_ENABLE_COLLECTION_LIB */
|
||||
# define _REF_COLL(__o) ((void)(__o));
|
||||
# define _UNREF_COLL(__o) ((void)(__o));
|
||||
# define _ADDGC_COLL(__o, __g) ((void)(__o)); ((void)(__g));
|
||||
# define _UNREF_COLL_IT(__o) ((void)(__o));
|
||||
#endif /* MB_ENABLE_COLLECTION_LIB */
|
||||
#ifdef MB_ENABLE_CLASS
|
||||
# define _REF_CLASS(__o) \
|
||||
@ -6331,16 +6339,7 @@ int _dispose_object(_object_t* obj) {
|
||||
_UNREF_ARRAY(obj)
|
||||
_UNREF_COLL(obj)
|
||||
_UNREF_CLASS(obj)
|
||||
#ifdef MB_ENABLE_COLLECTION_LIB
|
||||
case _DT_LIST_IT:
|
||||
_destroy_list_it(obj->data.list_it);
|
||||
|
||||
break;
|
||||
case _DT_DICT_IT:
|
||||
_destroy_dict_it(obj->data.dict_it);
|
||||
|
||||
break;
|
||||
#endif /* MB_ENABLE_COLLECTION_LIB */
|
||||
_UNREF_COLL_IT(obj)
|
||||
case _DT_LABEL:
|
||||
if(!obj->ref) {
|
||||
safe_free(obj->data.label->name);
|
||||
@ -11123,7 +11122,7 @@ int _core_type(mb_interpreter_t* s, void** l) {
|
||||
if(arg.type == MB_DT_STRING) {
|
||||
for(i = 0; i < sizeof(mb_data_e) * 8; i++) {
|
||||
e = 1 << i;
|
||||
if(!strcmp(mb_get_type_string((mb_data_e)e), arg.value.string)) {
|
||||
if(!mb_stricmp(mb_get_type_string((mb_data_e)e), arg.value.string)) {
|
||||
arg.value.type = (mb_data_e)e;
|
||||
arg.type = MB_DT_TYPE;
|
||||
|
||||
|
@ -143,17 +143,19 @@ extern "C" {
|
||||
# define MB_NULL_STRING "(empty)"
|
||||
#endif /* MB_NULL_STRING */
|
||||
|
||||
#ifndef _MSC_VER
|
||||
# ifndef _strcmpi
|
||||
#ifndef mb_stricmp
|
||||
# ifdef _MSC_VER
|
||||
# define mb_stricmp _strcmpi
|
||||
# else /* _MSC_VER */
|
||||
# ifdef __BORLANDC__
|
||||
# define _strcmpi stricmp
|
||||
# define mb_stricmp stricmp
|
||||
# elif defined __POCC__
|
||||
# define _strcmpi _stricmp
|
||||
# define mb_stricmp _stricmp
|
||||
# else
|
||||
# define _strcmpi strcasecmp
|
||||
# define mb_stricmp strcasecmp
|
||||
# endif
|
||||
# endif /* _strcmpi */
|
||||
#endif /* _MSC_VER */
|
||||
# endif /* _MSC_VER */
|
||||
#endif /* mb_stricmp */
|
||||
|
||||
#ifndef mb_assert
|
||||
# define mb_assert(__a) do { ((void)(__a)); assert(__a); } while(0)
|
||||
|
@ -82,7 +82,7 @@ extern "C" {
|
||||
#define _USE_MEM_POOL 1
|
||||
|
||||
#define _MAX_LINE_LENGTH 256
|
||||
#define _str_eq(__str1, __str2) (_strcmpi(__str1, __str2) == 0)
|
||||
#define _str_eq(__str1, __str2) (mb_stricmp(__str1, __str2) == 0)
|
||||
|
||||
#define _LINE_INC_STEP 16
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user