Как вызвать метод в Swift 5 во время выполнения, учитывая строковое представление имени метода?

Я пытаюсь создать динамическую быструю программу, которая во время выполнения будет выполнять некоторые действия и преобразовывать строку в вызов метода.

Пример:

Array = ["TestMethod()", "TestMethod2()"]

хочу сказать по существу

if the sky is blue{
  convertStringToMethodCall(Array[0])
}

Цель состоит в том, чтобы метод TestMethod() действительно вызывался во время выполнения.

ПРИМЕЧАНИЕ. Это должно быть одно в Swift 5.


person logankilpatrick    schedule 12.07.2019    source источник
comment
В этом вопросе есть несколько хороших деталей, но он устарел, и с тех пор язык значительно изменился. stackoverflow.com/ вопросы/24245262/   -  person logankilpatrick    schedule 13.07.2019
comment
Интересно, для какого варианта использования это?   -  person Sh_Khan    schedule 13.07.2019
comment
Прочитайте из файла, напишите какой-нибудь быстрый код и заставьте быстрый код проверять динамические условия, и если определенные динамические условия пройдут, вызовите метод в текстовой форме.   -  person logankilpatrick    schedule 13.07.2019
comment
Методы не могут быть в текстовой форме в Swift.   -  person matt    schedule 13.07.2019


Ответы (1)


Основываясь на ответах других и дополнительных копаниях, в настоящее время это невозможно сделать с помощью Swift 5.x или более поздней версии! Если вы тоже пытаетесь сделать это, вам нужно будет найти другое решение.

person logankilpatrick    schedule 22.07.2019