public static enum ClassInfo.Traversal extends java.lang.Enum<ClassInfo.Traversal>
To all intents and purposes, the "real" class hierarchy and the mixin class hierarchy exist in parallel, this means that for some hierarchy validation operations we need to walk across to the other hierarchy in order to allow meaningful validation to occur.
This enum defines the type of traversal operations which are allowed for a particular lookup.
Each traversal type has a next property which defines
the traversal type to use on the next step of the hierarchy
validation. For example, the type IMMEDIATE which requires an
immediate match falls through to NONE on the next step, which
prevents further traversals from occurring in the lookup.
| Enum Constant and Description |
|---|
ALL
Traversal is allowed at all stages.
|
IMMEDIATE
Traversal is allowed at the bottom of the hierarchy but no further.
|
NONE
No traversals are allowed.
|
SUPER
Traversal is allowed only on superclasses and not at the bottom of
the hierarchy.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
canTraverse()
Return whether this traversal type allows traversal
|
ClassInfo.SearchType |
getSearchType() |
ClassInfo.Traversal |
next()
Return the next traversal type for this traversal type
|
static ClassInfo.Traversal |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static ClassInfo.Traversal[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final ClassInfo.Traversal NONE
public static final ClassInfo.Traversal ALL
public static final ClassInfo.Traversal IMMEDIATE
public static final ClassInfo.Traversal SUPER
public static ClassInfo.Traversal[] values()
for (ClassInfo.Traversal c : ClassInfo.Traversal.values()) System.out.println(c);
public static ClassInfo.Traversal valueOf(java.lang.String name)
name - the name of the enum constant to be returned.java.lang.IllegalArgumentException - if this enum type has no constant with the specified namejava.lang.NullPointerException - if the argument is nullpublic ClassInfo.Traversal next()
public boolean canTraverse()
public ClassInfo.SearchType getSearchType()