Чтобы предоставить простую альтернативу - вы можете просто использовать поведение по умолчанию функции печати в качестве функции с переменными значениями:
print("Event", "Tap")
Или определить свой собственный метод с использованием переменных с помощью приведенного выше, если вам необходимо:
func printer(_ strings: String...) {
// 'strings' is an array - pass in as many as you like.
print(strings.joined())
}
Затем вызовите
// Prints "EventTapEtc"
printer("Event", "Tap", "Etc")
РЕДАКТИРОВАТЬ: Хорошо, похоже, вы хотите точный формат, как указано выше.В этом случае это лучшее, что я мог придумать.Сначала определите класс, который будет функционировать как ваше обещание:
class Printer {
var string: String
init(_ string: String) {
self.string = string
}
func addParam(_ string: String) -> Printer {
self.string += string
return self
}
func print() {
Swift.print(string)
}
}
Затем определите функцию вашего принтера:
func printer(_ string: String) -> (Printer) {
return printer(string)
}
И вы можете вызвать с помощью:
printer("hello").addParam("goodbye").print()
ВТОРОЕ РЕДАКТИРОВАНИЕ: Похоже, что ответ выше меня опередил!Я бы пошел с этим.