private function resolveShortOptionSet(string $shortcut, definitions\Options $definitions) : array
    {
        $length = strlen($shortcut);
        $result = [];

        // Loop through the string, character by character.
        for ($i = 0; $i < $length; $i++) {
            $definition = $definitions->getByShortcut($shortcut[$i]);

            // The last shortcut in a set may have a value appended afterwards.
            if ($definition->hasValue()) {
                $result[$definition->getName()] = $i === $length - 1 ? null : substr($shortcut, $i + 1);
                break;
            }

            $result[$definition->getName()] = null;
        }

        return $result;
    }