in shenyu-plugin/shenyu-plugin-base/src/main/java/org/apache/shenyu/plugin/base/trie/ShenyuTrie.java [359:371]
private boolean completeResolveConflict(final ShenyuTrieNode node, final int[] wildcard, final int[] matchAll,
final int[] pathVariable, final int index) {
if (hasWildcardNode(node.getChildren(), WILDCARD) && containsKey(node.getChildren(), MATCH_ALL) && Objects.nonNull(node.getPathVariableNode())) {
return wildcard[index] == 1 && matchAll[index] == 1 && pathVariable[index] == 1;
} else if (hasWildcardNode(node.getChildren(), WILDCARD) && containsKey(node.getChildren(), MATCH_ALL)) {
return wildcard[index] == 1 && matchAll[index] == 1;
} else if (hasWildcardNode(node.getChildren(), WILDCARD) && Objects.nonNull(node.getPathVariableNode())) {
return wildcard[index] == 1 && pathVariable[index] == 1;
} else if (containsKey(node.getChildren(), MATCH_ALL) && Objects.nonNull(node.getPathVariableNode())) {
return matchAll[index] == 1 && pathVariable[index] == 1;
}
return false;
}