Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Make DEFAULT_TRIM_SET a MODULE_SCOPE string constant, so its value can be shared in tclCmdMZ.o and TclCompCmdsSZ.o and it no longer pollutes the tclStringTrim.h header file. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
2191bd84856ce684d6a0978a3a8e6b3c |
User & Date: | jan.nijtmans 2014-01-08 11:04:44.030 |
References
2014-01-07
| ||
15:29 | Revert Makefile.in changes and remove added tclStringTrim.h header. Otherwise, the same changes wo... Closed-Leaf check-in: acd990a59d user: jan.nijtmans tags: remove-trim-header | |
Context
2014-01-21
| ||
17:25 | [2992970] Restore safety of Tcl_AppendObjToObj(x, x) for bytearrays. check-in: 704897a19b user: dgp tags: trunk | |
2014-01-15
| ||
19:04 | [2992970] Restore the safety of Tcl_AppendObjToObj(x, x) for bytearrays. Also moves overflow checkin... Closed-Leaf check-in: e5267e9dcd user: dgp tags: bug-2992970 | |
2014-01-09
| ||
14:29 | merge trunk check-in: 769d84f6a6 user: dgp tags: dgp-refactor | |
2014-01-08
| ||
11:04 | Make DEFAULT_TRIM_SET a MODULE_SCOPE string constant, so its value can be shared in tclCmdMZ.o and T... check-in: 2191bd8485 user: jan.nijtmans tags: trunk | |
2014-01-07
| ||
14:19 | Add compilations for the following commands: * concat * linsert * namespace origin * next * str... check-in: 4492d3b645 user: dkf tags: trunk | |
Changes
Changes to generic/tclCmdMZ.c.
︙ | ︙ | |||
28 29 30 31 32 33 34 35 36 37 38 39 40 41 | int result); static int TryPostFinal(ClientData data[], Tcl_Interp *interp, int result); static int TryPostHandler(ClientData data[], Tcl_Interp *interp, int result); static int UniCharIsAscii(int character); static int UniCharIsHexDigit(int character); /* *---------------------------------------------------------------------- * * Tcl_PwdObjCmd -- * * This procedure is invoked to process the "pwd" Tcl command. See the | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | int result); static int TryPostFinal(ClientData data[], Tcl_Interp *interp, int result); static int TryPostHandler(ClientData data[], Tcl_Interp *interp, int result); static int UniCharIsAscii(int character); static int UniCharIsHexDigit(int character); /* * Default set of characters to trim in [string trim] and friends. This is a * UTF-8 literal string containing all Unicode space characters [TIP #413] */ const char tclDefaultTrimSet[] = "\x09\x0a\x0b\x0c\x0d " /* ASCII */ "\xc0\x80" /* nul (U+0000) */ "\xc2\x85" /* next line (U+0085) */ "\xc2\xa0" /* non-breaking space (U+00a0) */ "\xe1\x9a\x80" /* ogham space mark (U+1680) */ "\xe1\xa0\x8e" /* mongolian vowel separator (U+180e) */ "\xe2\x80\x80" /* en quad (U+2000) */ "\xe2\x80\x81" /* em quad (U+2001) */ "\xe2\x80\x82" /* en space (U+2002) */ "\xe2\x80\x83" /* em space (U+2003) */ "\xe2\x80\x84" /* three-per-em space (U+2004) */ "\xe2\x80\x85" /* four-per-em space (U+2005) */ "\xe2\x80\x86" /* six-per-em space (U+2006) */ "\xe2\x80\x87" /* figure space (U+2007) */ "\xe2\x80\x88" /* punctuation space (U+2008) */ "\xe2\x80\x89" /* thin space (U+2009) */ "\xe2\x80\x8a" /* hair space (U+200a) */ "\xe2\x80\x8b" /* zero width space (U+200b) */ "\xe2\x80\xa8" /* line separator (U+2028) */ "\xe2\x80\xa9" /* paragraph separator (U+2029) */ "\xe2\x80\xaf" /* narrow no-break space (U+202f) */ "\xe2\x81\x9f" /* medium mathematical space (U+205f) */ "\xe2\x81\xa0" /* word joiner (U+2060) */ "\xe3\x80\x80" /* ideographic space (U+3000) */ "\xef\xbb\xbf" /* zero width no-break space (U+feff) */ ; /* *---------------------------------------------------------------------- * * Tcl_PwdObjCmd -- * * This procedure is invoked to process the "pwd" Tcl command. See the |
︙ | ︙ | |||
3154 3155 3156 3157 3158 3159 3160 | { const char *string1, *string2; int triml, trimr, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { | | | | 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 | { const char *string1, *string2; int triml, trimr, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { string2 = tclDefaultTrimSet; length2 = strlen(tclDefaultTrimSet); } else { Tcl_WrongNumArgs(interp, 1, objv, "string ?chars?"); return TCL_ERROR; } string1 = TclGetStringFromObj(objv[1], &length1); triml = TclTrimLeft(string1, length1, string2, length2); |
︙ | ︙ | |||
3202 3203 3204 3205 3206 3207 3208 | { const char *string1, *string2; int trim, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { | | | | 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 | { const char *string1, *string2; int trim, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { string2 = tclDefaultTrimSet; length2 = strlen(tclDefaultTrimSet); } else { Tcl_WrongNumArgs(interp, 1, objv, "string ?chars?"); return TCL_ERROR; } string1 = TclGetStringFromObj(objv[1], &length1); trim = TclTrimLeft(string1, length1, string2, length2); |
︙ | ︙ | |||
3248 3249 3250 3251 3252 3253 3254 | { const char *string1, *string2; int trim, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { | | | | 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 | { const char *string1, *string2; int trim, length1, length2; if (objc == 3) { string2 = TclGetStringFromObj(objv[2], &length2); } else if (objc == 2) { string2 = tclDefaultTrimSet; length2 = strlen(tclDefaultTrimSet); } else { Tcl_WrongNumArgs(interp, 1, objv, "string ?chars?"); return TCL_ERROR; } string1 = TclGetStringFromObj(objv[1], &length1); trim = TclTrimRight(string1, length1, string2, length2); |
︙ | ︙ |
Changes to generic/tclCompCmdsSZ.c.
︙ | ︙ | |||
806 807 808 809 810 811 812 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { | | | 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { PushLiteral(envPtr, tclDefaultTrimSet, strlen(tclDefaultTrimSet)); } OP( STR_TRIM_LEFT); return TCL_OK; } int TclCompileStringTrimRCmd( |
︙ | ︙ | |||
834 835 836 837 838 839 840 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { | | | 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { PushLiteral(envPtr, tclDefaultTrimSet, strlen(tclDefaultTrimSet)); } OP( STR_TRIM_RIGHT); return TCL_OK; } int TclCompileStringTrimCmd( |
︙ | ︙ | |||
862 863 864 865 866 867 868 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { | | | 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 | tokenPtr = TokenAfter(parsePtr->tokenPtr); CompileWord(envPtr, tokenPtr, interp, 1); if (parsePtr->numWords == 3) { tokenPtr = TokenAfter(tokenPtr); CompileWord(envPtr, tokenPtr, interp, 2); } else { PushLiteral(envPtr, tclDefaultTrimSet, strlen(tclDefaultTrimSet)); } OP( STR_TRIM); return TCL_OK; } int TclCompileStringToUpperCmd( |
︙ | ︙ |
Changes to generic/tclStringTrim.h.
︙ | ︙ | |||
19 20 21 22 23 24 25 | #define TCL_STRING_TRIM_H /* * Default set of characters to trim in [string trim] and friends. This is a * UTF-8 literal string containing all Unicode space characters. [TIP #413] */ | | < < < < < < < < < < < < < < < < < < < < < < < < < | 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #define TCL_STRING_TRIM_H /* * Default set of characters to trim in [string trim] and friends. This is a * UTF-8 literal string containing all Unicode space characters. [TIP #413] */ MODULE_SCOPE const char tclDefaultTrimSet[]; /* * The whitespace trimming set used when [concat]enating. This is a subset of * the above, and deliberately so. */ #define CONCAT_TRIM_SET " \f\v\r\t\n" |
︙ | ︙ |