Swift: тип рекурсивного значения

У меня есть структура, в которой я хочу иметь глобальную переменную типа Struct ?. Этот пример по сути является более короткой версией структуры, которую я фактически создаю.

struct SplitString { //splits a string into parts before and after the first "/"

    var preSlash: String = String()
    var postSlash: SplitString? = nil

    init(_ str: String) {
        var arr = Array(str)
        var x = 0
        for ; x < arr.count && arr[x] != "/"; x++ { preSlash.append(arr[x]) }
        if x + 1 < arr.count { //if there is a slash
            var postSlashStr = String()
            for x++; x < arr.count; x++ {
                postSlashStr.append(arr[x])
            }
            postSlash = SplitString(postSlashStr)
        }
    }

}

Тем не менее, он выдает ошибку:

Recursive value type 'SplitString' is not allowed

Есть ли способ обойти это? Любая помощь будет отличной. Спасибо :)

Изменить: В случае, если это актуально, я программирую на iOS, а не OSX.

Изменить: если у меня есть:

var split = SplitString("first/second/third")

Я ожидаю, что раскол будет:

{preSlash = "first", postSlash = {preSlash = "second", postSlash = {preSlash = "third",
postSlash = nil}}}

Ответы на вопрос(2)

Ваш ответ на вопрос