Fossil

Diff
Login

Differences From Artifact [c158ef230a]:

To Artifact [3662908a48]:


817
818
819
820
821
822
823


824
825
826
827
828
829
830
831
832
833
834
835

836
837





838
839
840
841
842
843
844
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838


839
840
841
842
843
844
845
846
847
848
849
850







+
+












+
-
-
+
+
+
+
+







  return TH_OK;
}

/*
** TH Syntax:
**
**   string trim STRING
**   string trimleft STRING
**   string trimright STRING
*/
static int string_trim_command(
  Th_Interp *interp, void *ctx, int argc, const char **argv, int *argl
){
  int n;
  const char *z;

  if( argc!=3 ){
    return Th_WrongNumArgs(interp, "string trim string");
  }
  z = argv[2];
  n = argl[2];
  if( argl[1]<5 || argv[1][4]=='l' ){
  while( n && th_isspace(z[0]) ){ z++; n--; }
  while( n && th_isspace(z[n-1]) ){ n--; }
    while( n && th_isspace(z[0]) ){ z++; n--; }
  }
  if( argl[1]<5 || argv[1][4]=='r' ){
    while( n && th_isspace(z[n-1]) ){ n--; }
  }
  Th_SetResult(interp, z, n);
  return TH_OK;
}

/*
** TH Syntax:
**
917
918
919
920
921
922
923
924



925
926
927
928
929
930
931
923
924
925
926
927
928
929

930
931
932
933
934
935
936
937
938
939







-
+
+
+







    { "compare", string_compare_command },
    { "first",   string_first_command },
    { "is",      string_is_command },
    { "last",    string_last_command },
    { "length",  string_length_command },
    { "range",   string_range_command },
    { "repeat",  string_repeat_command },
    { "trim",    string_trim_command },
    { "trim",      string_trim_command },
    { "trimleft",  string_trim_command },
    { "trimright", string_trim_command },
    { 0, 0 }
  };
  return Th_CallSubCommand(interp, ctx, argc, argv, argl, aSub);
}

/*
** TH Syntax: