source: java2python/geniuswebtranslator/geniuswebsrc/geniusweb/profile/FullOrdering.java@ 805

Last change on this file since 805 was 804, checked in by wouter, 7 months ago

#278 added NonNull annotation in many places in the geniusweb code

File size: 1.1 KB
Line 
1package geniusweb.profile;
2
3import org.eclipse.jdt.annotation.NonNull;
4
5import geniusweb.issuevalue.Bid;
6
7/**
8 * As {@link PartialOrdering}, but with more strict requirement on
9 * {@link #isPreferredOrEqual(geniusweb.issuevalue.Bid, geniusweb.issuevalue.Bid)}
10 */
11public interface FullOrdering extends PartialOrdering {
12 /**
13 * @param bid1 the first item's utility/preference
14 * @param bid2 the second item's utility/preference
15 * @return true iff bid1 is considered better or equal (≥) than bid 2. In
16 * all other cases false is returned.
17 *
18 * This predicate should be implemented such that
19 * <ul>
20 * <li>For all b1 and b2, either b1 &ge; b2 or b2 &ge; b1.
21 * <li>b &ge; b (every bid is better or equal to itself)
22 * <li>If b1&ge;b2 and b2&ge;b1 then the two bids are considered
23 * equally good. Note that this differes from a partial order in
24 * mathematics.
25 * <li>it behaves transitive: if b1&ge;b2 and b2&ge;b3 then
26 * b1&ge;b3.
27 * </ul>
28 */
29 @Override
30 boolean isPreferredOrEqual(final @NonNull Bid bid1,
31 final @NonNull Bid bid2);
32}
Note: See TracBrowser for help on using the repository browser.