|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD |
java.lang.Object java.lang.Enum<MappingType> org.eigenbase.util.mapping.MappingType
public enum MappingType
Describes the type of a mapping, from the most general MultiFunction
(every element in the source and target domain can participate in many
mappings) to the most retricted Bijection
(every element in the
source and target domain must be paired with precisely one element in the
other domain).
Some common types:
Once you know what type of mapping you want, call Mappings.create(MappingType, int, int)
to create an efficient implementation
of that mapping.
Enum Constant Summary | |
---|---|
Bijection
|
|
Eleven
|
|
Fourteen
|
|
Function
|
|
Injection
|
|
InverseFunction
An inverse function has a source for every target, but a source might have 0, 1 or more targets. |
|
InverseInjection
|
|
InversePartialFunction
|
|
InversePartialInjection
|
|
InverseSurjection
An inverse surjection has a source for every target, and no source has more than one target. |
|
MultiFunction
|
|
PartialFunction
|
|
PartialInjection
|
|
PartialSurjection
A partial surjection has no more than one source for any target, and no more than one target for any source. |
|
Surjection
|
|
Ten
|
Field Summary | |
---|---|
private int |
inverseOrdinal
|
private static int |
MultipleSource
Allow more than one source for a given target. |
private static int |
MultipleTarget
Allow more than one target for a given source. |
private static int |
OptionalSource
Allow less than one source for a given target. |
private static int |
OptionalTarget
Allow less than one target for a given source. |
Method Summary | |
---|---|
MappingType |
inverse()
|
boolean |
isA(MappingType mappingType)
Returns whether this mapping type is (possibly a weaker form of) a given mapping type. |
boolean |
isBijection()
A mapping is a bijection if it is a surjection and it is an injection. |
boolean |
isFunction()
A mapping is a total function if every source has precisely one target. |
boolean |
isInjection()
A mapping is an injection if it is a function and no target has more than one source. |
boolean |
isMandatorySource()
Constraint that every target has at least one source. |
boolean |
isMandatoryTarget()
Constraint that every source has at least one target. |
boolean |
isPartialFunction()
A mapping is a partial function if every source has at most one target. |
boolean |
isSingleSource()
Constraint that every target has at most one source. |
boolean |
isSingleTarget()
Constraint that every source has at most one target. |
boolean |
isSurjection()
A mapping is a surjection if it is a function and every target has at least one source. |
static MappingType |
valueOf(String name)
Returns the enum constant of this type with the specified name. |
static MappingType[] |
values()
Returns an array containing the constants of this enum type, in the order they're declared. |
Methods inherited from class java.lang.Enum |
---|
clone, compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Enum Constant Detail |
---|
public static final MappingType Bijection
public static final MappingType Surjection
public static final MappingType Injection
public static final MappingType Function
public static final MappingType InverseSurjection
public static final MappingType PartialSurjection
public static final MappingType PartialInjection
public static final MappingType PartialFunction
public static final MappingType InverseInjection
public static final MappingType InversePartialInjection
public static final MappingType Ten
public static final MappingType Eleven
public static final MappingType InverseFunction
Obeys the constaints isMandatorySource()
, isSingleSource()
.
Similar types:
InverseSurjection
is stronger (a source may not have
multiple targets);
InversePartialFunction
is weaker (a target may have 0 or 1
sources).
public static final MappingType InversePartialFunction
public static final MappingType Fourteen
public static final MappingType MultiFunction
Field Detail |
---|
private final int inverseOrdinal
private static final int OptionalSource
private static final int MultipleSource
private static final int OptionalTarget
private static final int MultipleTarget
Method Detail |
---|
public static final MappingType[] values()
for(MappingType c : MappingType.values()) System.out.println(c);
public static MappingType valueOf(String name)
name
- the name of the enum constant to be returned.
IllegalArgumentException
- if this enum type has no constant
with the specified namepublic MappingType inverse()
public boolean isA(MappingType mappingType)
For example, a Bijection
is a Function
, but not
every {link #Function} is a Bijection
.
public boolean isFunction()
public boolean isPartialFunction()
public boolean isSurjection()
public boolean isInjection()
public boolean isBijection()
public boolean isMandatoryTarget()
public boolean isSingleTarget()
public boolean isMandatorySource()
public boolean isSingleSource()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD |