public class OperandRole
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static OperandRole |
ABSORB |
static OperandRole |
ATOMIC_SEQUENCE |
static int |
CONSTRAINED_CLASS |
static OperandRole |
FOCUS_CONTROLLED_ACTION |
static OperandRole |
FOCUS_CONTROLLING_SELECT |
static int |
HAS_SPECIAL_FOCUS_RULES |
static int |
HIGHER_ORDER |
static int |
IN_CHOICE_GROUP |
static OperandRole |
INSPECT |
static OperandRole |
NAVIGATE |
static OperandRole |
NEW_FOCUS_ATOMIC |
static OperandRole |
PATTERN |
static OperandRole |
REPEAT_INSPECT |
static OperandRole |
REPEAT_NAVIGATE |
static OperandRole |
REPEAT_NAVIGATE_CONSTRAINED |
static OperandRole |
SAME_FOCUS_ACTION |
static int |
SETS_NEW_FOCUS |
static OperandRole |
SINGLE_ATOMIC |
static int |
SINGLETON |
static int |
USES_NEW_FOCUS |
Constructor and Description |
---|
OperandRole(int properties,
OperandUsage usage) |
OperandRole(int properties,
OperandUsage usage,
SequenceType requiredType) |
OperandRole(int properties,
OperandUsage usage,
SequenceType requiredType,
java.util.function.Predicate<Expression> constraint) |
Modifier and Type | Method and Description |
---|---|
java.util.function.Predicate<Expression> |
getConstraint() |
int |
getProperties() |
SequenceType |
getRequiredType()
Get the required type of the operand
|
static OperandUsage |
getTypeDeterminedUsage(ItemType type)
Static method to get the type-determined usage for a particular ItemType
|
OperandUsage |
getUsage()
Get the usage of the operand
|
boolean |
hasSameFocus()
Ask whether the child expression is evaluated with the same focus as its parent expression
|
boolean |
hasSpecialFocusRules() |
boolean |
isConstrainedClass()
Ask whether the operand is constrained to be of a particular class (preventing
substitution of a variable binding)
|
boolean |
isEvaluatedRepeatedly()
Ask whether the operand is a higher-order operand, in the sense that the child expression
is evaluated repeatedly during a single evaluation of the parent expression
|
boolean |
isHigherOrder() |
boolean |
isInChoiceGroup()
Ask whether the operand is a member of a choice group
|
OperandRole |
modifyProperty(int property,
boolean on) |
boolean |
setsNewFocus()
Ask whether the child expression sets the focus for evaluation of other child expressions
|
public static final int SETS_NEW_FOCUS
public static final int USES_NEW_FOCUS
public static final int HIGHER_ORDER
public static final int IN_CHOICE_GROUP
public static final int CONSTRAINED_CLASS
public static final int SINGLETON
public static final int HAS_SPECIAL_FOCUS_RULES
public static final OperandRole SAME_FOCUS_ACTION
public static final OperandRole FOCUS_CONTROLLING_SELECT
public static final OperandRole FOCUS_CONTROLLED_ACTION
public static final OperandRole INSPECT
public static final OperandRole ABSORB
public static final OperandRole REPEAT_INSPECT
public static final OperandRole NAVIGATE
public static final OperandRole REPEAT_NAVIGATE
public static final OperandRole REPEAT_NAVIGATE_CONSTRAINED
public static final OperandRole SINGLE_ATOMIC
public static final OperandRole ATOMIC_SEQUENCE
public static final OperandRole NEW_FOCUS_ATOMIC
public static final OperandRole PATTERN
public OperandRole(int properties, OperandUsage usage)
public OperandRole(int properties, OperandUsage usage, SequenceType requiredType)
public OperandRole(int properties, OperandUsage usage, SequenceType requiredType, java.util.function.Predicate<Expression> constraint)
public boolean setsNewFocus()
public boolean hasSameFocus()
public boolean hasSpecialFocusRules()
public boolean isEvaluatedRepeatedly()
public boolean isHigherOrder()
public boolean isConstrainedClass()
public java.util.function.Predicate<Expression> getConstraint()
public OperandUsage getUsage()
public SequenceType getRequiredType()
public boolean isInChoiceGroup()
public static OperandUsage getTypeDeterminedUsage(ItemType type)
type
- the required typepublic OperandRole modifyProperty(int property, boolean on)
public int getProperties()
Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.