boolean (MatchNode matchNode, MatchEngine engine) { if (matchNode.getType() != MatchNode.MATCHNODE_EXPRENT) { return false; } for (Entry<MatchProperties, RuleValue> rule : matchNode.getRules().entrySet()) { MatchProperties key = rule.getKey(); if (key == MatchProperties.EXPRENT_TYPE && this.type != (Integer)rule.getValue().value) { return false; } if (key == MatchProperties.EXPRENT_RET && !engine.checkAndSetVariableValue((String)rule.getValue().value, this)) { return false; } } return true; }