Ejemplo n.º 1
0
  /**
   * @return true if this is an FQ name of a fictitious class representing the function type, e.g.
   *     kotlin.Function1 (but NOT kotlin.reflect.KFunction1)
   */
  public static boolean isNumberedFunctionClassFqName(@NotNull FqNameUnsafe fqName) {
    List<Name> segments = fqName.pathSegments();
    if (segments.size() != 2) return false;

    if (!BUILT_INS_PACKAGE_NAME.equals(first(segments))) return false;

    String shortName = last(segments).asString();
    return BuiltInFictitiousFunctionClassFactory.parseClassName(
            shortName, BUILT_INS_PACKAGE_FQ_NAME)
        != null;
  }