class CommunitySetMatchExprEvaluator implements CommunitySetMatchExprVisitor<Boolean, CommunitySet> {

  @Override
  public @Nonnull Boolean visitHasCommunity(HasCommunity hasCommunity, CommunitySet arg) {
    return arg.getCommunities().stream()
        .anyMatch(c -> hasCommunity.getExpr().accept(_ctx.getCommunityMatchExprEvaluator(), c));
  }

  public  CommunitySetMatchExprEvaluator(CommunityContext ctx);

}