Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Pagetitle
Reflection.isAnnotationDataPresent
Reflection.isAnnotationDataPresent

Procura Efetua a busca de uma Annotation em uma propriedade de um objeto.

...

Bloco de código
collapsefalse
Reflection.isAnnotationDataPresent( oObjxParam, cPropertyName, cAnnotationName )

...

Nome

Tipo

Descrição

Obrigatório

Referência

oObjxParam**

objeto/caractere**

Objeto instância da classe/nome da classe** Indica o objeto onde será procurado/a  a Annotation.

X


cPropertyName

caractere

Indica o nome Nome da propriedade onde será procurada a Annotation.

X


cAnnotationName
caractereIndica o nome Nome da Annotation que será procurada. X
Informações
titleImplementação de comportamento

A partir do build 24.3.0.0, também haverá a opção de passar simplesmente o nome da classe em xParam, conforme exemplo 2. Mas continua valendo a passagem da instância do objeto (exemplo 1). 

Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna  .T. caso encontre a Annotation e .F. caso não encontre.

Exemplos

Bloco de código
languagecpp
themeEclipse
titleexemplo1.tlpp
linenumberstrue
#include "tlpp-core.th"

@annotation AnnotationExemploAnnotationIsAnnotationDataPresent
    nickname as char
@end

Class IsAnnotationDataPresent
class MeuObjeto
	@AnnotationExemplo@AnnotationIsAnnotationDataPresent(nickname = "CompanyTotvs")
	publicPublic data data1

	publicPublic methodMethod newNew()
EndClass


main function usoDeAnnotationMethod New() class IsAnnotationDataPresent
Return Self

Function u_testIsAnnotationDataPresent()
	localLocal oObj := MeuObjetoIsAnnotationDataPresent():New()
	conoutConout(Reflection.isAnnotationDataPresent(oObj, "data1", "AnnotationExemploAnnotationIsAnnotationDataPresent"))
	conoutConout(Reflection.isAnnotationDataPresent(oObj, "data1", "TesteNoExist"))
Return
Bloco de código
languagecpp
themeEclipse
titleexemplo2.tlpp
linenumberstrue
#include "tlpp-core.th"

@annotation AnnotationIsAnnotationDataPresent
nickname as char
@end

Class IsAnnotationDataPresent

	@AnnotationIsAnnotationDataPresent(nickname = "Totvs")
	Public data data1

	Public Method New()
EndClass

Method New() class IsAnnotationDataPresent
Return Self

Function u_testIsAnnotationDataPresent()
	
	Conout(Reflection.isAnnotationDataPresent("IsAnnotationDataPresent", "data1", "AnnotationIsAnnotationDataPresent"))
	Conout(Reflection.isAnnotationDataPresent("IsAnnotationDataPresent", "data1", "NoExist"))
return
Return

Resultado

...

dos Exemplos

.T.

.F.

Abrangência

17.3.0.3

...