MCPcopy Create free account
hub / github.com/CoderLine/alphaTab / parseEnum

Method parseEnum

packages/alphatab/src/io/JsonHelper.ts:12–26  ·  view source on GitHub ↗

* @target web * @partial

(s: unknown, enumType: any)

Source from the content-addressed store, hash-verified

10 * @partial
11 */
12 public static parseEnum<T>(s: unknown, enumType: any): T | undefined {
13 switch (typeof s) {
14 case 'string':
15 const num = Number.parseInt(s, 10);
16 return Number.isNaN(num)
17 ? (enumType[Object.keys(enumType).find(k => k.toLowerCase() === s.toLowerCase()) as any] as any)
18 : (num as unknown as T);
19 case 'number':
20 return s as unknown as T;
21 case 'undefined':
22 case 'object':
23 return undefined;
24 }
25 throw new AlphaTabError(AlphaTabErrorType.Format, `Could not parse enum value '${s}'`);
26 }
27
28 /**
29 * @target web

Callers 15

setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45
setPropertyMethod · 0.45

Calls 3

parseIntMethod · 0.80
isNaNMethod · 0.80
keysMethod · 0.45

Tested by

no test coverage detected