aboutsummaryrefslogtreecommitdiff
path: root/jim.h
AgeCommit message (Collapse)AuthorFilesLines
2005-04-10Fix for [return -code eval]antirez1-3/+3
2005-04-09Experimental verison of JIM_EVAL retcode in order to implementantirez1-1/+4
what RHS proposed in the Wiki for tail recursion: return -code eval [list proc $a $b ...] I'm not sure I'll take this, but it needs to be inside for some time in order to experiment and evaluate it I guess.
2005-04-06Shhhhh. Silenced a number of warnings when using MSVC.patthoyts1-2/+2
2005-04-06Generic API implementing the Stack data structure exported toantirez1-1/+27
extensions.
2005-04-05.jimrc support (or jimrc.tcl). Minimal readline extension, just enoughantirez1-1/+4
to allow to the pure-Jim rlprompt extension to provide a readline-aware interactive shell with history.
2005-04-04Version marked as "0.51".antirez1-2/+2
2005-04-02[package require] + Makefile changes about libraries currently not working...antirez1-2/+3
2005-03-31Implemented the C API "background" for the packages system of Jim.antirez1-5/+16
2005-03-29A number of fix for commands optimizing a bit too much objectsantirez1-1/+8
not shared, that didn't played very well with Jim arrays. Added the [rand] command.
2005-03-21Add copyright notice within jim.c & jim.h to acknowledge Jim's license.chi1-1/+2
2005-03-21Add the [scan] command and the Jim_ScanString function + tests.chi1-3/+6
The scanformat specification will be converted to a new Jim_Obj of type scanFormatStringObjType, that will contain the parsed representation within its internal object representation. This speed up multiple scanning within e.g. a loop, of objects were cached. For internal scanning we use sscanf currently (I am lazy right now). That means also, we will inherit its incapability to handle string with embedded ZERO. It would be not too difficult to implement another scanner just for the string and charset conversion type that could be able to handle those embedded ZEROs, however. Furthermore two small details were fixed: 1. Jim_DoubleToString should also recognize a number if a leading '+' or '-' occured. By recognizing I mean, add a ".0" to such a number. 2. Jim_StrDupLen should also properly handle duplication of substrings. So now it should be possible to do this: const char *str1 = "This is a long string"; char *substr1 = Jim_StrDupLen(str1, 4); Now substr1 should contain a properly ZERO ended "This".
2005-03-19[finalize] command and relative C API added (SS).antirez1-1/+5
2005-03-17Objects hash function changed.antirez1-1/+3
2005-03-17[source] command added.antirez1-2/+2
2005-03-17The interactive prompt can now used to type/paste multi line scripts.antirez1-4/+5
Every line is appended to the previous until the script does not appear to be complete (tested by Jim_IsScriptComplete()).
2005-03-16[env] modified to just be able to read a specified var nameantirez1-3/+2
form the environment, i.e. to be ANSI-C. Minor fix to AIO extension to use the new DelProc API.
2005-03-16Added interpreter pointer to the command delete proc.patthoyts1-3/+4
2005-03-15A first version of [info complete].antirez1-1/+3
2005-03-14'iterator' argument modified to 'iter' for C++ STL safety.antirez1-2/+2
2005-03-14more fixes to allow inclusion of jim.h into C++ programs.antirez1-4/+6
2005-03-14Some change to make jim.h more C++ friendly, still not workingantirez1-4/+9
with g++ btw.
2005-03-13Max nesting depth modified to 10000antirez1-2/+2
2005-03-12Added the ability to compile with -DJIM_ANSIC to use only ANSI-Cantirez1-2/+2
features and libraries.
2005-03-12Added the Jim_FreeNewObj() macro to free objects with refcount == 0antirez1-1/+10
instead to call Jim_IncrRefCount + Jim_DecrRefCount(), or directly Jim_FreeObj(). Code modified accordingly where needed. Make test + valgrind test passed after the change.
2005-03-11static variables supportantirez1-4/+6
2005-03-10lrange command (me)antirez1-1/+4
2005-03-09[linsert] command added (Clemens Hintze).antirez1-1/+4
Jim_GetIndex() semantic changed to make [lindex] more compatible with Tcl's one, without effects on other commnads (me).
2005-03-08Did some fix in jimsh.c, exported some more API function to setantirez1-1/+10
variables and global variables using a string C as name instead of a Jim_Obj. This is more handy in mani conditions.
2005-03-08JIM_VERSION is to be an integer value which we present as MAJOR.MINOR topatthoyts1-4/+2
users. MAJOR is JIM_VERSION / 100
2005-03-08Added [info patchlevel] and setup argv0 and argv variables in jimsh.patthoyts1-2/+2
Changed Jim_InteractivePrompt to take a pre-initialized interpreter.
2005-03-07Faster procedure calls (obtained caching the hashtable, and withantirez1-2/+2
a fast path to free the cached hash tables elements).
2005-03-07Refactored the [info] command and added body and version to the command.patthoyts1-6/+7
Added a simple version of [lsort] (no options yet).
2005-03-06Fixed a race condition in the garbage collection code.antirez1-2/+2
In order to fix this, now the hash table iterator works in a way that's save to delete returned entries during the iteration.
2005-03-06Added Jim_GetEnum() API function. StringCoreCommand and AIO extensionantirez1-1/+4
modified to use this API. There are plenty of other places where this will work better than the raw CompareStringImmediate(). Original idea from Tcl, Original implementation from Pat Thoyts, I changed the implementationto use CSI and for automatic error generation with all the valid options listed.
2005-03-05Solved a problem with Jim_Length()antirez1-2/+3
2005-03-05Initial version of AIO (ANSI C I/O) extension added.antirez1-2/+6
Some bit of const safeness. A new API function to get the object length, Jim_Length().
2005-03-05delProc callback added to Jim_CreateCommand().antirez1-2/+5
Core commands handling updated to respect the new sematic.
2005-03-05Added Jim_GetAssocData api. This for permitting packages to register apatthoyts1-1/+12
data structure with a Jim interpreter.
2005-03-05removed strcasecmp() and isascii(). Now the Jim core is fullyantirez1-1/+5
ANSI-C excluding the [load] command. I plan to add a JIM_FORCE_ANSIC ifdef to exclude the load command for compilation.
2005-03-05[switch] command contributed by Clemens Hintze, modified toantirez1-3/+3
avoid problems with -command and shimmering of the objects passed as [switch] arguments.
2005-03-04jim::libpath renamed into jim.libpath. Also there was a bug listedantirez1-1/+7
in the BUG file about jim.libpath lookup performed using the local variable API that's now fixed. In order to fix the problem the new API call Jim_GetGlobalVariableStr() was added. Jim_GetVariableStr() and Jim_GetGlobalVariableStr() are now exported.
2005-03-04$id: ..$ strings addedantirez1-0/+2
2005-03-04Added JIM_NOTUSED macro. Macro used where appropriate.antirez1-0/+3
2005-03-04Use command line vars in the Makefile.patthoyts1-1/+1
Make const quiet with gcc -Wwrite-strings Fixed macro usage in COM extension that gcc doesn't like.
2005-03-04more benchmarks. Initial size of hashtables modified.antirez1-1/+1
Some documentation change.
2005-03-03Missing functions exportedantirez1-0/+5
2005-03-03RegisterCoreCommands now exported (broken in the last commit)antirez1-0/+1
2005-03-03Made exporting of symbols to the API less error proneantirez1-77/+81
with JIM_REGISTER_API and JIM_GET_API macros.
2005-03-03improtant fix! jim error message visualization was brokenantirez1-1/+1
because Jim_PrintErrorMessage() was not exported using the right funciton pointer.
2005-03-03changes to the reference system. Now references string repantirez1-1/+4
includes a 'tag' that makes interactive usage and debugging simpler.