ConstantCallSite Construtores

Definição

Sobrecargas

Nome Description
ConstantCallSite(MethodHandle)

Cria um site de chamada com um destino permanente.

ConstantCallSite(MethodType, MethodHandle)

Cria um site de chamada com um destino permanente, possivelmente associado ao próprio site de chamada.

ConstantCallSite(IntPtr, JniHandleOwnership)

ConstantCallSite(MethodHandle)

Cria um site de chamada com um destino permanente.

[Android.Runtime.Register(".ctor", "(Ljava/lang/invoke/MethodHandle;)V", "", ApiSince=26)]
public ConstantCallSite(Java.Lang.Invoke.MethodHandle? target);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/invoke/MethodHandle;)V", "", ApiSince=26)>]
new Java.Lang.Invoke.ConstantCallSite : Java.Lang.Invoke.MethodHandle -> Java.Lang.Invoke.ConstantCallSite

Parâmetros

target
MethodHandle

o destino a ser permanentemente associado a este site de chamada

Atributos

Comentários

Cria um site de chamada com um destino permanente.

Documentação Java para java.lang.invoke.ConstantCallSite.ConstantCallSite(java.lang.invoke.MethodHandle).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

ConstantCallSite(MethodType, MethodHandle)

Cria um site de chamada com um destino permanente, possivelmente associado ao próprio site de chamada.

[Android.Runtime.Register(".ctor", "(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;)V", "", ApiSince=26)]
protected ConstantCallSite(Java.Lang.Invoke.MethodType? targetType, Java.Lang.Invoke.MethodHandle? createTargetHook);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;)V", "", ApiSince=26)>]
new Java.Lang.Invoke.ConstantCallSite : Java.Lang.Invoke.MethodType * Java.Lang.Invoke.MethodHandle -> Java.Lang.Invoke.ConstantCallSite

Parâmetros

targetType
MethodType

o tipo do identificador do método a ser permanentemente associado a este site de chamada

createTargetHook
MethodHandle

um identificador de método a ser invocado (no site de chamada) para produzir o destino do site de chamada

Atributos

Comentários

Cria um site de chamada com um destino permanente, possivelmente associado ao próprio site de chamada.

Durante a construção do local de chamada, ele createTargetHook é invocado para produzir o destino real, como se fosse por uma chamada do formulário (MethodHandle) createTargetHook.invoke(this).

Observe que o código do usuário não pode executar essa ação diretamente em um construtor de subclasse, pois o destino deve ser corrigido antes que o ConstantCallSite construtor retorne.

O gancho é dito para associar o site de chamada a um identificador de método de destino, e uma ação típica seria someTarget.bindTo(this). No entanto, o gancho é livre para executar qualquer ação, incluindo ignorar o site de chamadas e retornar um destino constante.

O resultado retornado pelo gancho deve ser um identificador de método exatamente do mesmo tipo que o site de chamada.

Enquanto o gancho está sendo chamado, o novo ConstantCallSite objeto está em um estado parcialmente construído. Nesse estado, uma chamada para getTarget, ou qualquer outra tentativa de usar o destino, resultará em um IllegalStateException. É legal a todo momento obter o tipo do site de chamada usando o type método.

Documentação Java para java.lang.invoke.ConstantCallSite.ConstantCallSite(java.lang.invoke.MethodType, java.lang.invoke.MethodHandle).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a

ConstantCallSite(IntPtr, JniHandleOwnership)

protected ConstantCallSite(IntPtr javaReference, Android.Runtime.JniHandleOwnership transfer);
new Java.Lang.Invoke.ConstantCallSite : nativeint * Android.Runtime.JniHandleOwnership -> Java.Lang.Invoke.ConstantCallSite

Parâmetros

javaReference
IntPtr

nativeint

Comentários

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a