Lingua

SwitchBootstraps.TypeSwitch Metodo

Definizione

Collega un invokedynamic sito di chiamata che attiva una destinazione di tipo riferimento.

[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

Parametri

lookup
MethodHandles.Lookup

Contesto di ricerca con i privilegi di accessibilità del chiamante.

invocationName
String

Inutilizzato.

invocationType
MethodType

Tipo di chiamata del sito di chiamata con un parametro di tipo riferimento, un int parametro e un tipo restituito int .

labels
Object[]

Etichette maiuscole e minuscole, rappresentate da Stringvalori di Classdescrizione enumerazione , Int32, o .

Valori restituiti

Sito di chiamata che restituisce -1 per una null destinazione, l'indice della prima etichetta corrispondente in corrispondenza o dopo l'indice di riavvio o labels.Length quando nessuna etichetta corrisponde.

Attributi

Eccezioni

Un elemento di labels è null; invocationType non accetta un tipo di riferimento e un oggetto int e restituisce un intoggetto ; oppure un'etichetta non è un Stringvalore , Int32, Classo enum-description.

Un argomento è null.

Commenti

Il sito di chiamata restituito produce -1 per una null destinazione. Per una destinazione non Null, esegue una ricerca dall'indice di riavvio e restituisce il primo indice di etichetta corrispondente o labels.Length quando nessuna etichetta corrisponde. L'indice di riavvio deve essere compreso tra zero e labels.Length, inclusivo; in caso contrario, richiamare il sito di chiamata genera IndexOutOfBoundsException.

per java.lang.runtime.SwitchBootstraps.typeSwitch.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a