mirror of https://github.com/sbt/sbt.git
30 lines
726 B
Java
30 lines
726 B
Java
/* sbt -- Simple Build Tool
|
|
* Copyright 2008, 2009, 2010 Mark Harrah
|
|
*/
|
|
package xsbti;
|
|
|
|
/** Intended as a lightweight carrier for scala.Option. */
|
|
public abstract class Maybe<t>
|
|
{
|
|
// private pending Scala bug #3642
|
|
protected Maybe() {}
|
|
|
|
public static <s> Maybe<s> just(final s v)
|
|
{
|
|
return new Maybe<s>() {
|
|
public boolean isDefined() { return true; }
|
|
public s get() { return v; }
|
|
};
|
|
}
|
|
public static <s> Maybe<s> nothing()
|
|
{
|
|
return new Maybe<s>() {
|
|
public boolean isDefined() { return false; }
|
|
public s get() { throw new UnsupportedOperationException("nothing.get"); }
|
|
};
|
|
}
|
|
|
|
public final boolean isEmpty() { return !isDefined(); }
|
|
public abstract boolean isDefined();
|
|
public abstract t get();
|
|
} |