Hashtable2 with many bugs

This commit is contained in:
2022-06-20 19:54:56 +03:00
parent 893a24eeb3
commit 378277450b
7 changed files with 202 additions and 153 deletions

View File

@@ -11,7 +11,7 @@ char* errname(ErrorId err){
case ERR_NOTIMPLEMENTED: return "ERR_NOTIMPLEMENTED";
case ERR_NULLPTR: return "ERR_NULLPTR";
case ERR_ENDOFSTR: return "ERR_ENDOFSTR";
case ERR_DESYNC: return "ERR_DESYNC";
case ERR_KEYNOTFOUND: return "ERR_KEYNOTFOUND";
default: return "UNKNOWN_ERROR";
}
}

View File

@@ -11,7 +11,7 @@ typedef enum ErrorId {
SUCCESS, // not an error
ERR_MAXLENGTH, ERR_WRONGTYPE, ERR_WRONGINDEX,
ERR_NOTIMPLEMENTED, ERR_NULLPTR, ERR_ENDOFSTR,
ERR_DESYNC
ERR_KEYNOTFOUND
} ErrorId;
char* errname(ErrorId err);
@@ -51,10 +51,10 @@ char* __unknownErr( );
#if __cplusplus
#define throw_id(E) __EXIT(((char*)__genErrMsg(errname(E), __FILE__,__LINE__,__func__)))
#define throw_msg(E) __EXIT(((char*)__genErrMsg(E, __FILE__,__LINE__,__func__)))
#else
#define throw(E) __EXIT(((char*)__genErrMsg((__stringify_err(E)), __FILE__,__LINE__,__func__)))
#define safethrow(E, FREEMEM) { FREEMEM; __RETURN_EXCEPTION(((char*)__genErrMsg((__stringify_err(E)), __FILE__,__LINE__,__func__))); }
#endif
#define throw(E) __EXIT(((char*)__genErrMsg((__stringify_err(E)), __FILE__,__LINE__,__func__)))
#define safethrow(E, FREEMEM) { FREEMEM; __RETURN_EXCEPTION(((char*)__genErrMsg((__stringify_err(E)), __FILE__,__LINE__,__func__))); }
#define try(_funcCall, _rezult, freeMem) Maybe _rezult=_funcCall; if(_rezult.errmsg){\
freeMem;\