Я пытаюсь переопределить динамические методы домена в groovy. Есть ли что-то подобное с помощью псевдонима в ruby в groovy?
Как выполнить сглаживание метода в groovy?
Ответ 1
Вы имеете в виду как оператор ссылки метода .&
?
def out = System.out.&println
out << "Hello"
и
def greet(name) {
println "Hello $name"
}
def sayHello = this.&greet
sayHello "Ronny"
Он упоминается в http://groovy.codehaus.org/Operators, но отсутствует пример
Ответ 2
Вы можете сделать это, используя метапрограммирование:
MyClass.metaClass.aliasMethod = MyClass.metaClass.originalMethod
Ответ 3
Я не видел этого в Groovy и ничего не могу найти об этом.
Одним из способов достижения этого будет очевидный, но плохой способ.
def greet(name) {
println "Hello $name"
}
def sayHello(name) {
greet(name)
}