private void addMatchReferences()

in src/main/software/amazon/event/ruler/ByteMachine.java [1653:1696]


    private void addMatchReferences(ByteMatch match) {
        Patterns pattern = match.getPattern();
        switch (pattern.type()) {
        case EXACT:
        case PREFIX:
        case PREFIX_EQUALS_IGNORE_CASE:
        case EXISTS:
        case EQUALS_IGNORE_CASE:
        case WILDCARD:
            break;
        case SUFFIX:
        case SUFFIX_EQUALS_IGNORE_CASE:
            hasSuffix.incrementAndGet();
            break;
        case NUMERIC_EQ:
            hasNumeric.incrementAndGet();
            break;
        case NUMERIC_RANGE:
            final Range range = (Range) pattern;
            if (range.isCIDR) {
                hasIP.incrementAndGet();
            } else {
                hasNumeric.incrementAndGet();
            }
            break;
        case ANYTHING_BUT:
            addToAnythingButsMap(anythingButs, match.getNextNameState(), match.getPattern());
            if (((AnythingBut) pattern).isNumeric()) {
                hasNumeric.incrementAndGet();
            }
            break;
        case ANYTHING_BUT_PREFIX:
        case ANYTHING_BUT_IGNORE_CASE:
        case ANYTHING_BUT_WILDCARD:
            addToAnythingButsMap(anythingButs, match.getNextNameState(), match.getPattern());
            break;
        case ANYTHING_BUT_SUFFIX:
            hasSuffix.incrementAndGet();
            addToAnythingButsMap(anythingButs, match.getNextNameState(), match.getPattern());
            break;
        default:
            throw new AssertionError("Not implemented yet");
        }
    }