Package gw.lang.parser.expressions
Enum Variance
- java.lang.Object
-
- java.lang.Enum<Variance>
-
- gw.lang.parser.expressions.Variance
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classVariance.DefaultVarianceVerifierstatic interfaceVariance.IVarianceVerifierprivate static classVariance.VarianceInvalidException
-
Enum Constant Summary
Enum Constants Enum Constant Description CONTRAVARIANTCOVARIANTDEFAULTINVARIANTPENDINGinternal use: variance inferenceWILD_CONTRAVARIANTinternal use: Java interopWILD_COVARIANTinternal use: Java interop
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String_descprivate char_signprivate static TypeSystemAwareCache<IType,java.util.Map<java.lang.String,Variance>>DEFAULT_VARIANCE_MAPprivate static booleanSUPPORT_DEFAULT_VARIANCE_CHECKING
-
Constructor Summary
Constructors Modifier Constructor Description privateVariance(java.lang.String desc, char sign)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetDesc()chargetSymbol()private static VariancegetVariance(ITypeVariableType type)private static voidinferVariance(IType genericType, java.util.Map<java.lang.String,Variance> map)private static VarianceinvertVariance(Variance variance)private static booleanisTypeVarFromEnclosingType(IType enclosingType, ITypeVariableType typeVar)static VariancemaybeInferVariance(IType type, IGenericTypeVariable gtv)static VariancevalueOf(java.lang.String name)Returns the enum constant of this type with the specified name.static Variance[]values()Returns an array containing the constants of this enum type, in the order they are declared.private static booleanverifyDefaultForVariance(IType type)static voidverifyDefaultTypeVarVariance(IType enclosingType, Variance ctxVariance, IType... types)static voidverifyTypeVarVariance(Variance variance, IType enclosingType, Variance.IVarianceVerifier verifier, IType type)
-
-
-
Enum Constant Detail
-
COVARIANT
public static final Variance COVARIANT
-
CONTRAVARIANT
public static final Variance CONTRAVARIANT
-
INVARIANT
public static final Variance INVARIANT
-
DEFAULT
public static final Variance DEFAULT
-
PENDING
public static final Variance PENDING
internal use: variance inference
-
WILD_COVARIANT
public static final Variance WILD_COVARIANT
internal use: Java interop
-
WILD_CONTRAVARIANT
public static final Variance WILD_CONTRAVARIANT
internal use: Java interop
-
-
Field Detail
-
SUPPORT_DEFAULT_VARIANCE_CHECKING
private static final boolean SUPPORT_DEFAULT_VARIANCE_CHECKING
- See Also:
- Constant Field Values
-
DEFAULT_VARIANCE_MAP
private static final TypeSystemAwareCache<IType,java.util.Map<java.lang.String,Variance>> DEFAULT_VARIANCE_MAP
-
_desc
private final java.lang.String _desc
-
_sign
private final char _sign
-
-
Method Detail
-
values
public static Variance[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Variance c : Variance.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Variance valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException- if this enum type has no constant with the specified namejava.lang.NullPointerException- if the argument is null
-
getDesc
public java.lang.String getDesc()
-
getSymbol
public char getSymbol()
-
verifyTypeVarVariance
public static void verifyTypeVarVariance(Variance variance, IType enclosingType, Variance.IVarianceVerifier verifier, IType type)
-
getVariance
private static Variance getVariance(ITypeVariableType type)
-
maybeInferVariance
public static Variance maybeInferVariance(IType type, IGenericTypeVariable gtv)
-
isTypeVarFromEnclosingType
private static boolean isTypeVarFromEnclosingType(IType enclosingType, ITypeVariableType typeVar)
-
inferVariance
private static void inferVariance(IType genericType, java.util.Map<java.lang.String,Variance> map)
-
verifyDefaultForVariance
private static boolean verifyDefaultForVariance(IType type)
-
verifyDefaultTypeVarVariance
public static void verifyDefaultTypeVarVariance(IType enclosingType, Variance ctxVariance, IType... types)
-
-