![JAR search and dependency download from the Maven repository](/logo.png)
com.linkedin.dagli.util.function.ComposedFunction4 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of util-function Show documentation
Show all versions of util-function Show documentation
DAG-oriented machine learning framework for bug-resistant, readable, efficient, maintainable and trivially deployable models in Java and other JVM languages
// AUTOGENERATED CODE. DO NOT MODIFY DIRECTLY! Instead, please modify the util/function/ComposedFunction.ftl file.
// See the README in the module's src/template directory for details.
package com.linkedin.dagli.util.function;
import java.util.Objects;
/**
* A function class implementing {@link Function4.Serializable} that composes
* {@link Function4} with a {@link Function1}. The function is only actually serializable
* if its constituent composed functions are serializable, of course.
*/
class ComposedFunction4 implements Function4.Serializable {
private static final long serialVersionUID = 1;
private final Function4 _first;
private final Function1 super Q, ? extends R> _andThen;
/**
* Creates a new instance that composes two functions, i.e. {@code andThen(first(inputs))}.
*
* @param first the first function to be called in the composition
* @param andThen the second function to be called in the composition, accepting the {@code first} functions result
* as input
*/
ComposedFunction4(Function4 first, Function1 super Q, ? extends R> andThen) {
_first = first;
_andThen = andThen;
}
@Override
@SuppressWarnings("unchecked")
public ComposedFunction4 safelySerializable() {
return new ComposedFunction4<>(((Function4.Serializable) _first).safelySerializable(),
((Function1.Serializable super Q, ? extends R>) _andThen).safelySerializable());
}
@Override
public R apply(A value1, B value2, C value3, D value4) {
return _andThen.apply(_first.apply(value1, value2, value3, value4));
}
@Override
public int hashCode() {
return Objects.hash(ComposedFunction4.class, _first, _andThen);
}
@Override
public boolean equals(Object obj) {
if (obj instanceof ComposedFunction4) {
return this._first.equals(((ComposedFunction4) obj)._first)
&& this._andThen.equals(((ComposedFunction4) obj)._andThen);
}
return false;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy