SwitchBootstraps.TypeSwitch Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Vincula un invokedynamic sitio de llamada que cambia en un destino de tipo de referencia.
[Android.Runtime.Register("typeSwitch", "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;", "", ApiSince=36)]
public static Java.Lang.Invoke.CallSite? TypeSwitch(Java.Lang.Invoke.MethodHandles.Lookup? lookup, string? invocationName, Java.Lang.Invoke.MethodType? invocationType, params Java.Lang.Object[]? labels);
[<Android.Runtime.Register("typeSwitch", "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;", "", ApiSince=36)>]
static member TypeSwitch : Java.Lang.Invoke.MethodHandles.Lookup * string * Java.Lang.Invoke.MethodType * Java.Lang.Object[] -> Java.Lang.Invoke.CallSite
Parámetros
- lookup
- MethodHandles.Lookup
Contexto de búsqueda con privilegios de accesibilidad del autor de la llamada.
- invocationName
- String
No usado.
- invocationType
- MethodType
Tipo de invocación de sitio de llamada con un parámetro de tipo de referencia, un int parámetro y un int tipo de valor devuelto.
- labels
- Object[]
Etiquetas de mayúsculas y minúsculas, representadas por Stringvalores Classde enumeración Int32y descripción.
Devoluciones
Un sitio de llamada que devuelve -1 para un null destino, el índice de la primera etiqueta coincidente en o después del índice de reinicio, o labels.Length cuando ninguna etiqueta coincide.
- Atributos
Excepciones
Un elemento de es ; invocationType no acepta un tipo de labels referencia y un int y devuelve un int; o una etiqueta no es un Stringvalor , Int32, Classo enum-descriptionnull.
Un argumento es null.
Comentarios
El sitio de llamada devuelto genera -1 para un null destino. En el caso de un destino que no sea NULL, busca desde el índice de reinicio y devuelve el primer índice de etiqueta coincidente o labels.Length cuando no coincide ninguna etiqueta. El índice de reinicio debe ser de cero a labels.Length, ambos inclusive; de lo contrario, al invocar el sitio de llamada se produce IndexOutOfBoundsException.
Documentación de Java para java.lang.runtime.SwitchBootstraps.typeSwitch.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.