Warn on constant locals not being actual constants; Simplify changetype

This commit is contained in:
dcodeIO
2017-12-28 17:16:37 +01:00
parent 2f12c7fa50
commit 4207f6460d
14 changed files with 90 additions and 74 deletions

View File

@ -2185,15 +2185,14 @@ function builderEndsWith(sb: string[], code: CharCode): bool {
export function escapeString(str: string): string {
var k = str.length;
var ret = new Array<string>(k);
ret.length = 0;
for (var i = 0, c: string; i < k; ++i) {
switch (c = str.charAt(i)) {
case "\\": ret.push("\\\\"); break;
case "\"": ret.push("\\\""); break;
case "\r": ret.push("\\r"); break;
case "\n": ret.push("\\n"); break;
case "\0": ret.push("\\0"); break;
default: ret.push(c);
case "\\": ret[i] = "\\\\"; break;
case "\"": ret[i] = "\\\""; break;
case "\r": ret[i] = "\\r"; break;
case "\n": ret[i] = "\\n"; break;
case "\0": ret[i] = "\\0"; break;
default: ret[i] = c;
}
}
return "\"" + ret.join("") + "\"";