MCPcopy Create free account
hub / github.com/akhilkedia/AllTrans / javaScriptEscape

Method javaScriptEscape

app/src/main/java/akhil/alltrans/utils.java:141–213  ·  view source on GitHub ↗
(String str)

Source from the content-addressed store, hash-verified

139 // Taken from Apache Commons Lang 2.6 at -
140 // https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/src-html/org/apache/commons/lang/StringEscapeUtils.html#line.146
141 public static String javaScriptEscape(String str) {
142 if (str == null) {
143 return null;
144 }
145 StringWriter writer = new StringWriter(str.length() * 2);
146 int sz;
147 sz = str.length();
148 for (int i = 0; i < sz; i++) {
149 char ch = str.charAt(i);
150
151 // handle unicode
152 if (ch > 0xfff) {
153 writer.write("\\u" + hex(ch));
154 } else if (ch > 0xff) {
155 writer.write("\\u0" + hex(ch));
156 } else if (ch > 0x7f) {
157 writer.write("\\u00" + hex(ch));
158 } else if (ch < 32) {
159 switch (ch) {
160 case '\b':
161 writer.write('\\');
162 writer.write('b');
163 break;
164 case '\n':
165 writer.write('\\');
166 writer.write('n');
167 break;
168 case '\t':
169 writer.write('\\');
170 writer.write('t');
171 break;
172 case '\f':
173 writer.write('\\');
174 writer.write('f');
175 break;
176 case '\r':
177 writer.write('\\');
178 writer.write('r');
179 break;
180 default:
181 if (ch > 0xf) {
182 writer.write("\\u00" + hex(ch));
183 } else {
184 writer.write("\\u000" + hex(ch));
185 }
186 break;
187 }
188 } else {
189 switch (ch) {
190 case '\'':
191 writer.write('\\');
192 writer.write('\'');
193 break;
194 case '"':
195 writer.write('\\');
196 writer.write('"');
197 break;
198 case '\\':

Callers 1

callOriginalMethodMethod · 0.80

Calls 2

hexMethod · 0.95
toStringMethod · 0.80

Tested by

no test coverage detected