All files utils.ts

100% Statements 12/12
100% Branches 0/0
100% Functions 3/3
100% Lines 11/11
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 262x 2x 2x 2x 2x   2x 292x         292x 292x       238564x     2x          
import { SyntaxKind } from 'typescript';
import bases from './bases';
import kinds from './kinds';
import { BaseNames, DefKind, Defs, UnionNames } from './types';
import unions from './unions';
 
export function getDefKinds(): DefKind[] {
  const result = [
    ...enumValues(SyntaxKind),
    ...enumValues(BaseNames),
    ...enumValues(UnionNames),
  ];
  result.sort();
  return result;
}
 
function enumValues(enumType: any): DefKind[] {
  return Object.keys(enumType).filter(o => typeof o === 'string') as DefKind[];
}
 
export const defs: Defs = {
  ...kinds,
  ...bases,
  ...unions,
} as any;