diff options
author | antirez <antirez> | 2005-03-03 15:30:47 +0000 |
---|---|---|
committer | antirez <antirez> | 2005-03-03 15:30:47 +0000 |
commit | b529b8b718c67e29bbf03b6412e3a4f9cbd1b3aa (patch) | |
tree | 943a3e2381f8821284c3b890ff20ed25b091b09d /jim.h | |
parent | 3829249aa79806d52b89f1b07e12cfa7a983d190 (diff) | |
download | jimtcl-b529b8b718c67e29bbf03b6412e3a4f9cbd1b3aa.zip jimtcl-b529b8b718c67e29bbf03b6412e3a4f9cbd1b3aa.tar.gz jimtcl-b529b8b718c67e29bbf03b6412e3a4f9cbd1b3aa.tar.bz2 |
Made exporting of symbols to the API less error prone
with JIM_REGISTER_API and JIM_GET_API macros.
Diffstat (limited to 'jim.h')
-rw-r--r-- | jim.h | 158 |
1 files changed, 81 insertions, 77 deletions
@@ -680,87 +680,91 @@ JIM_STATIC int JIM_API(Jim_InteractivePrompt) (void); JIM_STATIC void JIM_API(Jim_Panic) (const char *fmt, ...); #ifndef __JIM_CORE__ + +#define JIM_GET_API(name) \ + Jim_ ## name = Jim_GetApi(interp, "Jim_" #name) + /* This must be included "inline" inside the extension */ static void Jim_InitExtension(Jim_Interp *interp, const char *version) { Jim_GetApi = interp->getApiFuncPtr; - - Jim_Alloc = Jim_GetApi(interp, "Jim_Alloc"); - Jim_Eval = Jim_GetApi(interp, "Jim_Eval"); - Jim_EvalFile = Jim_GetApi(interp, "Jim_EvalFile"); - Jim_EvalObj = Jim_GetApi(interp, "Jim_EvalObj"); - Jim_EvalObjVector = Jim_GetApi(interp, "Jim_EvalObjVector"); - Jim_InitHashTable = Jim_GetApi(interp, "Jim_InitHashTable"); - Jim_ExpandHashTable = Jim_GetApi(interp, "Jim_ExpandHashTable"); - Jim_AddHashEntry = Jim_GetApi(interp, "Jim_AddHashEntry"); - Jim_ReplaceHashEntry = Jim_GetApi(interp, "Jim_ReplaceHashEntry"); - Jim_DeleteHashEntry = Jim_GetApi(interp, "Jim_DeleteHashEntry"); - Jim_FreeHashTable = Jim_GetApi(interp, "Jim_FreeHashTable"); - Jim_FindHashEntry = Jim_GetApi(interp, "Jim_FindHashEntry"); - Jim_ResizeHashTable = Jim_GetApi(interp, "Jim_ResizeHashTable"); - Jim_GetHashTableIterator = Jim_GetApi(interp, "Jim_GetHashTableIterator"); - Jim_NextHashEntry = Jim_GetApi(interp, "Jim_NextHashEntry"); - Jim_NewObj = Jim_GetApi(interp, "Jim_NewObj"); - Jim_FreeObj = Jim_GetApi(interp, "Jim_FreeObj"); - Jim_InvalidateStringRep = Jim_GetApi(interp, "Jim_InvalidateStringRep"); - Jim_InitStringRep = Jim_GetApi(interp, "Jim_InitStringRep"); - Jim_DuplicateObj = Jim_GetApi(interp, "Jim_DuplicateObj"); - Jim_GetString = Jim_GetApi(interp, "Jim_GetString"); - Jim_InvalidateStringRep = Jim_GetApi(interp, "Jim_InvalidateStringRep"); - Jim_NewStringObj = Jim_GetApi(interp, "Jim_NewStringObj"); - Jim_NewStringObjNoAlloc = Jim_GetApi(interp, "Jim_NewStringObjNoAlloc"); - Jim_AppendString = Jim_GetApi(interp, "Jim_AppendString"); - Jim_AppendObj = Jim_GetApi(interp, "Jim_AppendObj"); - Jim_AppendStrings = Jim_GetApi(interp, "Jim_AppendStrings"); - Jim_StringEqObj = Jim_GetApi(interp, "Jim_StringEqObj"); - Jim_StringMatchObj = Jim_GetApi(interp, "Jim_StringMatchObj"); - Jim_StringRangeObj = Jim_GetApi(interp, "Jim_StringRangeObj"); - Jim_CompareStringImmediate = Jim_GetApi(interp, "Jim_CompareStringImmediate"); - Jim_NewReference = Jim_GetApi(interp, "Jim_NewReference"); - Jim_GetReference = Jim_GetApi(interp, "Jim_GetReference"); - Jim_CreateInterp = Jim_GetApi(interp, "Jim_CreateInterp"); - Jim_FreeInterp = Jim_GetApi(interp, "Jim_FreeInterp"); - Jim_RegisterCoreCommands = Jim_GetApi(interp, "Jim_RegisterCoreCommands"); - Jim_CreateCommand = Jim_GetApi(interp, "Jim_CreateCommand"); - Jim_CreateProcedure = Jim_GetApi(interp, "Jim_CreateProcedure"); - Jim_DeleteCommand = Jim_GetApi(interp, "Jim_DeleteCommand"); - Jim_RenameCommand = Jim_GetApi(interp, "Jim_RenameCommand"); - Jim_GetCommand = Jim_GetApi(interp, "Jim_GetCommand"); - Jim_SetVariable = Jim_GetApi(interp, "Jim_SetVariable"); - Jim_SetVariableLink = Jim_GetApi(interp, "Jim_SetVariableLink"); - Jim_GetVariable = Jim_GetApi(interp, "Jim_GetVariable"); - Jim_UnsetVariable = Jim_GetApi(interp, "Jim_UnsetVariable"); - Jim_GetCallFrameByLevel = Jim_GetApi(interp, "Jim_GetCallFrameByLevel"); - Jim_Collect = Jim_GetApi(interp, "Jim_Collect"); - Jim_CollectIfNeeded = Jim_GetApi(interp, "Jim_CollectIfNeeded"); - Jim_GetIndex = Jim_GetApi(interp, "Jim_GetIndex"); - Jim_NewListObj = Jim_GetApi(interp, "Jim_NewListObj"); - Jim_ListAppendElement = Jim_GetApi(interp, "Jim_ListAppendElement"); - Jim_ListAppendList = Jim_GetApi(interp, "Jim_ListAppendList"); - Jim_ListLength = Jim_GetApi(interp, "Jim_ListLength"); - Jim_ListIndex = Jim_GetApi(interp, "Jim_ListIndex"); - Jim_SetListIndex = Jim_GetApi(interp, "Jim_SetListIndex"); - Jim_ConcatObj = Jim_GetApi(interp, "Jim_ConcatObj"); - Jim_NewDictObj = Jim_GetApi(interp, "Jim_NewDictObj"); - Jim_DictKey = Jim_GetApi(interp, "Jim_DictKey"); - Jim_DictKeysVector = Jim_GetApi(interp, "Jim_DictKeysVector"); - Jim_GetIndex = Jim_GetApi(interp, "Jim_GetIndex"); - Jim_GetReturnCode = Jim_GetApi(interp, "Jim_GetReturnCode"); - Jim_EvalExpression = Jim_GetApi(interp, "Jim_EvalExpression"); - Jim_GetBoolFromExpr = Jim_GetApi(interp, "Jim_GetBoolFromExpr"); - Jim_GetWide = Jim_GetApi(interp, "Jim_GetWide"); - Jim_GetLong = Jim_GetApi(interp, "Jim_GetLong"); - Jim_SetWide = Jim_GetApi(interp, "Jim_SetWide"); - Jim_NewIntObj = Jim_GetApi(interp, "Jim_NewIntObj"); - Jim_GetDouble = Jim_GetApi(interp, "Jim_GetDouble"); - Jim_SetDouble = Jim_GetApi(interp, "Jim_SetDouble"); - Jim_NewDoubleObj = Jim_GetApi(interp, "Jim_NewDoubleObj"); - Jim_WrongNumArgs = Jim_GetApi(interp, "Jim_WrongNumArgs"); - Jim_SetDictKeysVector = Jim_GetApi(interp, "Jim_SetDictKeysVector"); - Jim_SubstObj = Jim_GetApi(interp, "Jim_SubstObj"); - Jim_RegisterApi = Jim_GetApi(interp, "Jim_RegisterApi"); - Jim_PrintErrorMessage = Jim_GetApi(interp, "Jim_PrintErrorMessage"); - Jim_InteractivePrompt = Jim_GetApi(interp, "Jim_InteractivePrompt"); + + // Jim_Alloc = Jim_GetApi(interp, "Jim_Alloc"); + JIM_GET_API(Alloc); + JIM_GET_API(Eval); + JIM_GET_API(EvalFile); + JIM_GET_API(EvalObj); + JIM_GET_API(EvalObjVector); + JIM_GET_API(InitHashTable); + JIM_GET_API(ExpandHashTable); + JIM_GET_API(AddHashEntry); + JIM_GET_API(ReplaceHashEntry); + JIM_GET_API(DeleteHashEntry); + JIM_GET_API(FreeHashTable); + JIM_GET_API(FindHashEntry); + JIM_GET_API(ResizeHashTable); + JIM_GET_API(GetHashTableIterator); + JIM_GET_API(NextHashEntry); + JIM_GET_API(NewObj); + JIM_GET_API(FreeObj); + JIM_GET_API(InvalidateStringRep); + JIM_GET_API(InitStringRep); + JIM_GET_API(DuplicateObj); + JIM_GET_API(GetString); + JIM_GET_API(InvalidateStringRep); + JIM_GET_API(NewStringObj); + JIM_GET_API(NewStringObjNoAlloc); + JIM_GET_API(AppendString); + JIM_GET_API(AppendObj); + JIM_GET_API(AppendStrings); + JIM_GET_API(StringEqObj); + JIM_GET_API(StringMatchObj); + JIM_GET_API(StringRangeObj); + JIM_GET_API(CompareStringImmediate); + JIM_GET_API(NewReference); + JIM_GET_API(GetReference); + JIM_GET_API(CreateInterp); + JIM_GET_API(FreeInterp); + JIM_GET_API(CreateCommand); + JIM_GET_API(CreateProcedure); + JIM_GET_API(DeleteCommand); + JIM_GET_API(RenameCommand); + JIM_GET_API(GetCommand); + JIM_GET_API(SetVariable); + JIM_GET_API(SetVariableLink); + JIM_GET_API(GetVariable); + JIM_GET_API(GetCallFrameByLevel); + JIM_GET_API(Collect); + JIM_GET_API(CollectIfNeeded); + JIM_GET_API(GetIndex); + JIM_GET_API(NewListObj); + JIM_GET_API(ListAppendElement); + JIM_GET_API(ListAppendList); + JIM_GET_API(ListLength); + JIM_GET_API(ListIndex); + JIM_GET_API(SetListIndex); + JIM_GET_API(ConcatObj); + JIM_GET_API(NewDictObj); + JIM_GET_API(DictKey); + JIM_GET_API(DictKeysVector); + JIM_GET_API(GetIndex); + JIM_GET_API(GetReturnCode); + JIM_GET_API(EvalExpression); + JIM_GET_API(GetBoolFromExpr); + JIM_GET_API(GetWide); + JIM_GET_API(GetLong); + JIM_GET_API(SetWide); + JIM_GET_API(NewIntObj); + JIM_GET_API(GetDouble); + JIM_GET_API(SetDouble); + JIM_GET_API(NewDoubleObj); + JIM_GET_API(WrongNumArgs); + JIM_GET_API(SetDictKeysVector); + JIM_GET_API(SubstObj); + JIM_GET_API(RegisterApi); + JIM_GET_API(PrintErrorMessage); + JIM_GET_API(InteractivePrompt); + Jim_SetResultString(interp, version, -1); } |