Scala: sobrecarga de métodos sobre tipos genéricos
En C # puedo sobrecargar los métodos de tipo genérico como se muestra en el siguiente ejemplo:
// http://ideone.com/QVooD
using System;
using System.Collections.Generic;
public class Test {
public static void Foo(List<int> ints) {
Console.WriteLine("I just print");
}
public static void Foo(List<double> doubles) {
Console.WriteLine("I iterate over list and print it.");
foreach(var x in doubles)
Console.WriteLine(x);
}
public static void Main(string[] args) {
Foo(new List<int> {1, 2});
Foo(new List<double> {3.4, 1.2});
}
}
Sin embargo, si trato de hacer lo mismo en Scala, generará un error de tiempo de compilación queList[Int]
yList[Double]
borrar al mismo tipo debido a borrado. Escuché el de ScalaManifest
s se puede usar para solucionar esto, pero no sé cómo. Tampoco encontré nada útil en los documentos.
Entonces mi pregunta es: ¿Cómo usoManifest
s (o cualquier otra cosa que funcione) para sobrecargar métodos sobre tipos genéricos que se borran al mismo tipo debido a borrado?