public interface

Function<T, R>

 androidx.window.extensions.core.util.function.Function<T, R>

Gradle dependencies

compile group: 'androidx.window.extensions.core', name: 'core', version: '1.0.0'

  • groupId: androidx.window.extensions.core
  • artifactId: core
  • version: 1.0.0

Artifact androidx.window.extensions.core:core:1.0.0 it located at Google repository (https://maven.google.com/)

Overview

Represents a function that accepts an argument and produces a result. It is used internally to avoid using Java 8 functional interface that leads to desugaring and Proguard shrinking.

Summary

Methods
public java.lang.Objectapply(java.lang.Object t)

Applies this function to the given argument.

Methods

public java.lang.Object apply(java.lang.Object t)

Applies this function to the given argument.

Parameters:

t: the function argument

Returns:

the function result

Source

/*
 * Copyright 2023 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package androidx.window.extensions.core.util.function;

/**
 * Represents a function that accepts an argument and produces a result.
 * It is used internally to avoid using Java 8 functional interface that leads to desugaring and
 * Proguard shrinking.
 *
 * @param <T>: the type of the input of the function
 * @param <R>: the type of the output of the function
 *
 * @see java.util.function.Function
 */
@FunctionalInterface
public interface Function<T, R> {
    /**
     * Applies this function to the given argument.
     *
     * @param t the function argument
     * @return the function result
     */
    R apply(T t);
}