private static IMember getMember(IStructuredSelection selection) throws JavaScriptModelException {
    if (selection.size() != 1) return null;

    Object element = selection.getFirstElement();
    if (!(element instanceof IMember)) return null;

    if (element instanceof IFunction) {
      IFunction method = (IFunction) element;
      String returnType = method.getReturnType();
      if (PrimitiveType.toCode(Signature.toString(returnType)) != null) return null;
      return method;
    } else if (element instanceof IField) {
      return (IField) element;
    }
    return null;
  }