//Metodos publicos public bool AddEntrada <T>(T entrada) where T : Entrada { if (TipoEstaPermitido <T>()) { Console.WriteLine("Add Entrada Fail " + entrada.GetType().Name); return(false); } if (Entradas.Count <= 0) { Entradas.Enqueue(entrada); lastEntrada = entrada; UpdateTypesPermitidos(entrada); Console.WriteLine("Add Entrada Succes " + entrada.GetType().Name); UpdatedCalculator(); return(true); } if (lastEntrada.CheckForComposition(entrada)) { UpdatedCalculator(); Console.WriteLine("Add Entrada Succes Compuesta" + entrada.GetType().Name); return(true); } Entradas.Enqueue(entrada); UpdateTypesPermitidos(entrada); lastEntrada = entrada; Console.WriteLine("Add Entrada Succes " + entrada.GetType().Name); UpdatedCalculator(); return(true); }