MethodHandles.DropArgumentsToMatch 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í.
Adapta un identificador de método de destino para que coincida con la lista de tipos de parámetros especificado.
[Android.Runtime.Register("dropArgumentsToMatch", "(Ljava/lang/invoke/MethodHandle;ILjava/util/List;I)Ljava/lang/invoke/MethodHandle;", "", ApiSince=33)]
public static Java.Lang.Invoke.MethodHandle? DropArgumentsToMatch (Java.Lang.Invoke.MethodHandle? target, int skip, System.Collections.Generic.IList<Java.Lang.Class>? newTypes, int pos);
[<Android.Runtime.Register("dropArgumentsToMatch", "(Ljava/lang/invoke/MethodHandle;ILjava/util/List;I)Ljava/lang/invoke/MethodHandle;", "", ApiSince=33)>]
static member DropArgumentsToMatch : Java.Lang.Invoke.MethodHandle * int * System.Collections.Generic.IList<Java.Lang.Class> * int -> Java.Lang.Invoke.MethodHandle
Parámetros
- target
- MethodHandle
identificador del método para adaptarse
- skip
- Int32
número de parámetros de destino que se omitirán (no se modificarán)
la lista de tipos para que coincidan target
con la lista de tipos de parámetros a
- pos
- Int32
lugar en el que newTypes
deben producirse los parámetros de destino no omitidos
Devoluciones
un identificador de método posiblemente adaptado
- Atributos
Comentarios
Adapta un identificador de método de destino para que coincida con la lista de tipos de parámetros especificado. Si es necesario, agrega argumentos de marcador de posición. Se pueden omitir algunos parámetros iniciales antes de que comience la coincidencia. Los tipos restantes de la target
lista de tipos de parámetros deben ser una sub list de la newTypes
lista de tipos en la posición pos
inicial . El identificador resultante tendrá la lista de tipos de parámetros del identificador de destino, con cualquier tipo de parámetro no coincidente (antes o después de la sub list correspondiente) insertado en las posiciones correspondientes de los parámetros originales del destino, como si fuera #dropArguments(MethodHandle, int, Class[])
.
El identificador resultante tendrá el mismo tipo de valor devuelto que el identificador de destino.
En términos más formales, supongamos que estos dos tipos de listas:ul>li El identificador de destino tiene la lista S..., M...
de tipos de parámetros , con tantos tipos en S
como se indica en skip
.><< Los M
tipos son aquellos que se supone que coinciden con parte de la lista de tipos especificada, newTypes
. <li>La newTypes
lista contiene tipos P..., M..., A...
, con tantos tipos en P
como se indica en pos
. Los M
tipos son precisamente los que los M
tipos de la lista de tipos de parámetros del identificador de destino deben coincidir. Los tipos de A
son tipos adicionales que se encuentran después de la sub list coincidente. </ul> Dadas estas suposiciones, el resultado de una invocación de tendrá la lista S..., P..., M..., A...
de tipos de dropArgumentsToMatch
parámetros , con los P
tipos y A
insertados como si fuera .#dropArguments(MethodHandle, int, Class[])
Agregado en 9.
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.