mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
removed one indirection when performing an arg check in TH
This commit is contained in:
29
THGeneral.c
29
THGeneral.c
@ -32,30 +32,29 @@ void THSetErrorHandler( void (*torchErrorHandlerFunction_)(const char *msg) )
|
||||
}
|
||||
|
||||
/* Torch Arg Checking Handling */
|
||||
static void defaultTorchArgCheckHandlerFunction(int condition, int argNumber, const char *msg)
|
||||
static void defaultTorchArgErrorHandlerFunction(int argNumber, const char *msg)
|
||||
{
|
||||
if(!condition)
|
||||
{
|
||||
if(msg)
|
||||
printf("$ Invalid argument %d: %s\n", argNumber, msg);
|
||||
else
|
||||
printf("$ Invalid argument %d\n", argNumber);
|
||||
exit(-1);
|
||||
}
|
||||
if(msg)
|
||||
printf("$ Invalid argument %d: %s\n", argNumber, msg);
|
||||
else
|
||||
printf("$ Invalid argument %d\n", argNumber);
|
||||
exit(-1);
|
||||
}
|
||||
static void (*torchArgCheckHandlerFunction)(int condition, int argNumber, const char *msg) = defaultTorchArgCheckHandlerFunction;
|
||||
|
||||
static void (*torchArgErrorHandlerFunction)(int argNumber, const char *msg) = defaultTorchArgErrorHandlerFunction;
|
||||
|
||||
void THArgCheck(int condition, int argNumber, const char *msg)
|
||||
{
|
||||
(*torchArgCheckHandlerFunction)(condition, argNumber, msg);
|
||||
if(!condition)
|
||||
(*torchArgErrorHandlerFunction)(argNumber, msg);
|
||||
}
|
||||
|
||||
void THSetArgCheckHandler( void (*torchArgCheckHandlerFunction_)(int condition, int argNumber, const char *msg) )
|
||||
void THSetArgErrorHandler( void (*torchArgErrorHandlerFunction_)(int argNumber, const char *msg) )
|
||||
{
|
||||
if(torchArgCheckHandlerFunction_)
|
||||
torchArgCheckHandlerFunction = torchArgCheckHandlerFunction_;
|
||||
if(torchArgErrorHandlerFunction_)
|
||||
torchArgErrorHandlerFunction = torchArgErrorHandlerFunction_;
|
||||
else
|
||||
torchArgCheckHandlerFunction = defaultTorchArgCheckHandlerFunction;
|
||||
torchArgErrorHandlerFunction = defaultTorchArgErrorHandlerFunction;
|
||||
}
|
||||
|
||||
void* THAlloc(long size)
|
||||
|
@ -46,7 +46,7 @@ TH_API double log1p(const double x);
|
||||
TH_API void THError(const char *fmt, ...);
|
||||
TH_API void THSetErrorHandler( void (*torchErrorHandlerFunction)(const char *msg) );
|
||||
TH_API void THArgCheck(int condition, int argNumber, const char *msg);
|
||||
TH_API void THSetArgCheckHandler( void (*torchArgCheckHandlerFunction)(int condition, int argNumber, const char *msg) );
|
||||
TH_API void THSetArgErrorHandler( void (*torchArgErrorHandlerFunction)(int argNumber, const char *msg) );
|
||||
TH_API void* THAlloc(long size);
|
||||
TH_API void* THRealloc(void *ptr, long size);
|
||||
TH_API void THFree(void *ptr);
|
||||
|
Reference in New Issue
Block a user