2013-07-02 3 views
3

я приобрел MethodSymbol из некоторого класса, и теперь я хочу создать код, который вызывает этот метод на некотором дереве:Можно ли сгенерировать Применить из дерева и MethodSymbol?

tpe.declarations.collect { 
    case acc: MethodSymbol => 
    Apply(Select(tree.duplicate, ???), Nil) 
} 

Можно ли получить имя методы в чистом виде?

ответ

1

Вселенная имеет метод Select фабрика, которая принимает символ в качестве второго аргумента, так что вы бы просто написать следующее:

tpe.declarations.collect { 
    case acc: MethodSymbol => Select(tree.duplicate, acc) 
} 

Обратите внимание, что вам не нужно Apply здесь.

+0

Эх, мне нужно больше читать API - я пропускаю такие очевидные вещи. – Rogach

 Смежные вопросы

  • Нет связанных вопросов^_^