Histórico da Página
...
Retorna um array com o objeto Method de cada um dos métodos que possuem a annotation no objeto enviado.
Sintaxe
Bloco de código | ||
---|---|---|
| ||
Reflection.getMethodsObjectByAnnotation( oObj,cAnnotationName ) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
oObj | objeto | Objeto na qual a busca será realizada | X | |
cAnnotationName | caractere | Nome da annotation a ser procurada | X |
Retorno
Nome | Tipo | Descrição |
---|---|---|
aRet | Array | Retorna um array com o os objetos Method. |
Exemplos
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
//Definicoes das annotation, deve estar num fonte #include "tlpp-object.th" @annotation metodo @end @annotation classeMetodo @end @classeMetodo() Class NovaClasseMetodo Public Data TesteAttr @metodo() Public Method MetodoTeste() Public Method New(str) endclass Method New(str) class NovaClasseMetodo ::TesteAttr := str return self Method MetodoTeste() class NovaClasseMetodo Conout("Instancia executada: " + ::TesteAttr) return "Banana" User Function testeMetodo() local ObjMethod local classes local obj1 classes := Reflection.getClassesByAnnotation("classeMetodo", "") // vazio para pegar todas as classes do repositorio obj1 := classes[1]:CreateInstance("Instancia 1") ObjMethod := Reflection.getMethodsObjectByAnnotation(obj1, "metodo") conout("Nome do Metodo: " + ObjMethod[1]:cMethodName) return |
Resultado do Exemplo
Nome do Metodo: METODOTESTE
Abrangência
17.3.0.3
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas