NativeScript / NativeScript/android
Improve support for Java varargs methods
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- C++
- Estrellas
- 563
- Forks
- 144
- Merge medio
- 10 h 46 min
- PR fusionados (30 d)
- 14
Descripción
Java supports varargs methods. For example, [Class.getMethod](https://developer.android.com/reference/java/lang/Class.html#getMethod%28java.lang.String, java.lang.Class<?>...%29)
Method getMethod (String name, Class...<?> parameterTypes)
This is syntax sugar for the actual method signature which is
Method getMethod (String name, Class<?>[] parameterTypes)
Currently, NativeScript for Android does not support calling such method with implicit parameter
var klass = java.lang.Object.class;
// option 1) not supported
var method = klass.getMethod("hasCode");
// option 2) supported
var method = klass.getMethod("hasCode", null);
We can provide another implementation for the current method resolution algorithm so it tries to find a method with one additional parameter (array) as a fallback and if this fail then the method resolution fails as expected.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con el algoritmo actual de resolución de métodos en el runtime de NativeScript Android y sigue cómo las llamadas de JavaScript se asignan a los métodos de Java. Verifica el comportamiento con los ejemplos de varargs implícitos y explícitos del issue. Se considera terminado cuando un argumento varargs omitido se resuelve mediante el fallback del parámetro de array, mientras que los métodos no resueltos siguen fallando normalmente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp, java, javascript
- Área
- mobile-dev
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100