(text: string)
| 6 | } |
| 7 | |
| 8 | export function parse(text: string): ICastObject { |
| 9 | const factories = [ |
| 10 | AsciinemaCastParser, |
| 11 | TerminalizerParser |
| 12 | ] |
| 13 | for (let i = 0; i < factories.length; i++) { |
| 14 | const cls = factories[i] |
| 15 | try { |
| 16 | console.debug('trying ' + cls.name) |
| 17 | return (new cls()).parse(text) |
| 18 | } catch (e) { } |
| 19 | } |
| 20 | throw new Error('None of the available parsers can parse the cast') |
| 21 | } |
| 22 | |
| 23 | export class AsciinemaCastParser implements ICastParser { |
| 24 | public parse(text: string): ICastObject { |
no test coverage detected