Я реализую определения шага Groovy для Cucumber-JVM, и я хочу, чтобы был способ сохранить себя, чтобы следующий шаг мог повторить его n раз.Как может быть закрытие Groovy для повторения?
Given(~'the (\\S+) is in the blender') { String thing ->
// do stuff...
context.repeatable = self.curry(thing)
}
Что должно быть «я» в вышеуказанном коде?
Я не могу использовать «это», поскольку это относится к окружающему объекту (что бы ни было в этом случае, возможно, сценарию).
Вам нужна ссылка на метод, в котором он находится? – Will
Нет, ссылка на само закрытие, изнутри крышки. – quantoid
Я считаю, что «это» раньше было ссылкой на себя, но «это» в какой-то момент было изменено, чтобы быть ссылкой на экземпляр класса, в котором определено замыкание. – quantoid