All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.permazen.util.DiffGenerating Maven / Gradle / Ivy

The newest version!

/*
 * Copyright (C) 2015 Archie L. Cobbs. All rights reserved.
 */

package io.permazen.util;

/**
 * Implemented by classes that can generate a set of differences between themselves and other instances.
 *
 * @param  the type being compared
 */
@FunctionalInterface
public interface DiffGenerating {

    /**
     * Detect the differences of this instance when compared to the given instance.
     *
     * @param other other instance
     * @return differences; will be empty if there are none detected
     * @throws IllegalArgumentException if {@code other} is null
     */
    Diffs differencesFrom(T other);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy