- 论坛徽章:
- 84
|
添加一个命令 lslice- diff --git a/jim.c b/jim.c
- index 8c72777..4011bf4 100644
- --- a/jim.c
- +++ b/jim.c
- @@ -14951,6 +14951,26 @@ static int Jim_LrangeCoreCommand(Jim_Interp *interp, int argc, Jim_Obj *const *a
- return JIM_OK;
- }
-
- +/* [lslice] */
- +static int Jim_LsliceCoreCommand(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
- +{
- + Jim_Obj *tmpobjPtr = NULL;
- + Jim_Obj *objPtr = Jim_NewListObj(interp, NULL, 0);
- + int i = 0;
- +
- + if (argc < 3) {
- + Jim_WrongNumArgs(interp, 1, argv, "list ?index | first-last ...?");
- + return JIM_ERR;
- + }
- + for (i = 2; i < argc; i++) {
- + if ((tmpobjPtr = Jim_ListRange(interp, argv[1], argv[i], argv[i])) == NULL)
- + return JIM_ERR;
- + ListAppendElement(objPtr, tmpobjPtr);
- + }
- + Jim_SetResult(interp, objPtr);
- + return JIM_OK;
- +}
- +
- /* [lrepeat] */
- static int Jim_LrepeatCoreCommand(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
- {
- @@ -15240,6 +15260,7 @@ static const struct {
- {"scan", Jim_ScanCoreCommand},
- {"error", Jim_ErrorCoreCommand},
- {"lrange", Jim_LrangeCoreCommand},
- + {"lslice", Jim_LsliceCoreCommand},
- {"lrepeat", Jim_LrepeatCoreCommand},
- {"env", Jim_EnvCoreCommand},
- {"source", Jim_SourceCoreCommand},
复制代码 |
|