protected function collectConflictsWithin(ComparisonContext $context): void
    {
        // A field map is a keyed collection, where each key represents a response
        // name and the value at that key is a list of all fields which provide that
        // response name. For every response name, if there are multiple fields, they
        // must be compared to find a potential conflict.
        foreach ($context->getFieldMap() as $responseName => $fields) {
            $fieldsCount = \count($fields);

            // This compares every field in the list to every other field in this list
            // (except to itself). If the list only has one item, nothing needs to
            // be compared.
            if ($fieldsCount > 1) {
                /** @noinspection ForeachInvariantsInspection */
                for ($i = 0; $i < $fieldsCount; $i++) {
                    for ($j = $i + 1; $j < $fieldsCount; $j++) {
                        $conflict = $this->findConflict(
                            $responseName,
                            $fields[$i],
                            $fields[$j],
                            // within one collection is never mutually exclusive
                            false/* $areMutuallyExclusive */
                        );

                        if (null !== $conflict) {
                            $context->reportConflict($conflict);
                        }
                    }
                }
            }
        }
    }
protected function collectConflictsWithin(ComparisonContext $context): void
    {
        // A field map is a keyed collection, where each key represents a response
        // name and the value at that key is a list of all fields which provide that
        // response name. For every response name, if there are multiple fields, they
        // must be compared to find a potential conflict.
        foreach ($context->getFieldMap() as $responseName => $fields) {
            $fieldsCount = \count($fields);

            // This compares every field in the list to every other field in this list
            // (except to itself). If the list only has one item, nothing needs to
            // be compared.
            if ($fieldsCount > 1) {
                /** @noinspection ForeachInvariantsInspection */
                for ($i = 0; $i < $fieldsCount; $i++) {
                    for ($j = $i + 1; $j < $fieldsCount; $j++) {
                        $conflict = $this->findConflict(
                            $responseName,
                            $fields[$i],
                            $fields[$j],
                            // within one collection is never mutually exclusive
                            false/* $areMutuallyExclusive */
                        );

                        if (null !== $conflict) {
                            $context->reportConflict($conflict);
                        }
                    }
                }
            }
        }
    }
protected function collectConflictsWithin ( ComparisonContext $ context ) : void { // A field map is a keyed collection, where each key represents a response // name and the value at that key is a list of all fields which provide that // response name. For every response name, if there are multiple fields, they // must be compared to find a potential conflict. foreach ( $ context -> getFieldMap ( ) as $ responseName => $ fields ) { $ fieldsCount = \ count ( $ fields ) ; // This compares every field in the list to every other field in this list // (except to itself). If the list only has one item, nothing needs to // be compared. if ( $ fieldsCount > 1 ) { /** @noinspection ForeachInvariantsInspection */ for ( $ i = 0 ; $ i < $ fieldsCount ; $ i ++ ) { for ( $ j = $ i + 1 ; $ j < $ fieldsCount ; $ j ++ ) { $ conflict = $ this -> findConflict ( $ responseName , $ fields [ $ i ] , $ fields [ $ j ] , // within one collection is never mutually exclusive false /* $areMutuallyExclusive */ ) ; if ( null !== $ conflict ) { $ context -> reportConflict ( $ conflict ) ; } } } } } }
Collect all Conflicts "within" one collection of fields.

@param ComparisonContext $context
@throws ConversionException
@throws InvalidTypeException
@throws InvariantException
Collect all Conflicts within one collection of fields .