@Retention(value=RUNTIME) @Target(value=TYPE) @Repeatable(value=MatchableNodes.class) public @interface MatchableNode
MatchPattern
. These
declarations are required when parsing a MatchRule
. They are expected to be found on a
super type of the holder of the method declaring the MatchRule
.Modifier and Type | Required Element and Description |
---|---|
Class<? extends ValueNode> |
nodeClass
The
ValueNode subclass this annotation describes. |
Modifier and Type | Optional Element and Description |
---|---|
boolean |
commutative
Can a pattern be matched with the operands swapped.
|
String[] |
inputs
The names of the inputs in the order they should appear in the match.
|
boolean |
shareable
Can a node with multiple uses be safely matched by a rule.
|
public abstract boolean commutative
public abstract boolean shareable