(value: {
type: "String";
sourceText: string;
position: number;
})
| 294 | } |
| 295 | |
| 296 | #parseString(value: { |
| 297 | type: "String"; |
| 298 | sourceText: string; |
| 299 | position: number; |
| 300 | }): string { |
| 301 | let parsed; |
| 302 | try { |
| 303 | // Use JSON.parse to handle `\u0000` etc. correctly. |
| 304 | parsed = JSON.parse(value.sourceText); |
| 305 | } catch { |
| 306 | throw new SyntaxError(buildErrorMessage(value)); |
| 307 | } |
| 308 | if (typeof parsed !== "string") { |
| 309 | throw new TypeError(`Parsed value is not a string: ${parsed}`); |
| 310 | } |
| 311 | return parsed; |
| 312 | } |
| 313 | |
| 314 | #parseNullOrTrueOrFalseOrNumber(value: { |
| 315 | type: "NullOrTrueOrFalseOrNumber"; |
no test coverage detected