docs: boolean isAssignableTo(Parameter target, VisitorState state) {
      if (state.getTypes().isSameType(type(), Type.noType)
          || state.getTypes().isSameType(target.type(), Type.noType)) {
        return false;
      }
      try {
        return state.getTypes().isAssignable(type(), target.type());
      } catch (CompletionFailure e) {
        // Report completion errors to avoid e.g. https://github.com/bazelbuild/bazel/issues/4105
        Check.instance(state.context)
            .completionError((DiagnosticPosition) state.getPath().getLeaf(), e);
        return false;
      }
    }