export function convertMember()

in lib/json/conversions.ts [168:196]


export function convertMember(member: ts.ClassElement|ts.TypeElement): MemberDeclaration {
  if (ts.isSemicolonClassElement(member)) {
    return undefined;
  }
  if (ts.isPropertyDeclaration(member) || ts.isPropertySignature(member)) {
    return new PropertyDeclaration(member);
  }
  if (ts.isMethodDeclaration(member) || ts.isMethodSignature(member)) {
    return new MethodDeclaration(member);
  }
  if (ts.isConstructorDeclaration(member)) {
    return new ConstructorDeclaration(member);
  }
  if (ts.isConstructSignatureDeclaration(member)) {
    return new ConstructSignatureDeclaration(member);
  }
  if (ts.isGetAccessor(member)) {
    return new GetAccessorDeclaration(member);
  }
  if (ts.isSetAccessor(member)) {
    return new SetAccessorDeclaration(member);
  }
  if (ts.isCallSignatureDeclaration(member)) {
    return new CallSignatureDeclaration(member);
  }
  const error = new Error(`Unexpected Member kind: ${ts.SyntaxKind[member.kind]}`);
  error.name = 'DartFacadeError';
  throw error;
}