if (node instanceof ModifierQueryNode) {
final ModifierQueryNode modNode = (ModifierQueryNode) node;
if (modNode.getModifier() == Modifier.MOD_NONE) {
return new BooleanModifierNode(modNode.getChild(), Modifier.MOD_REQ);
}
} else {
return new BooleanModifierNode(node, Modifier.MOD_REQ);
}
}
} else {
if (parent instanceof AndQueryNode) {
if (node instanceof ModifierQueryNode) {
final ModifierQueryNode modNode = (ModifierQueryNode) node;
if (modNode.getModifier() == Modifier.MOD_NONE) {
return new BooleanModifierNode(modNode.getChild(), Modifier.MOD_REQ);
}
} else {
return new BooleanModifierNode(node, Modifier.MOD_REQ);
}
}
}