public override bool Equals(object obj) { if (this == obj) { return(true); } if (obj == null) { return(false); } if (this.GetType() != obj.GetType()) { return(false); } Hilera other = (Hilera)obj; if (string.ReferenceEquals(valor, null)) { if (!string.ReferenceEquals(other.valor, null)) { return(false); } } else if (!valor.Equals(other.valor)) { return(false); } return(true); }
public static Monedas obtenerTipoDeMonto(Hilera hilera) { //TODO El PRUSD esta mal.. pues tiene 5 letras y aqui se usan fijos 3. string tipo = hilera.Valor.Trim().Substring(0, 3).ToUpper(); return(monedas[tipo]); }
public override Boolean esIgualQue(Objeto objeto) { Hilera cadena = null; try { cadena = (Hilera)objeto; } catch (System.InvalidCastException) { throw new LanguageException(string.Format("En la comparación se esperaba el valor de tipo [{0}] pero se encontro un valor de tipo [{1}]", typeof(Hilera).Name, objeto.GetType().Name)); } return(this.valor == cadena.valor ? Boolean.True : Boolean.False); }
public override Objeto sumar(Objeto objeto) { Objeto resultado; if (objeto is Hilera) { resultado = new Hilera(valor + ((Hilera)objeto).Valor); } else if (objeto is Decimal) { resultado = new Hilera(valor + ((Decimal)objeto).Valor); } else if (objeto is Numero) { resultado = new Hilera(valor + ((Numero)objeto).Valor); } else { throw new LanguageException(string.Format("No se puede sumar un {0} a un {1}.", objeto.GetType().Name, this.GetType().Name)); } return(resultado); }
public virtual bool esIgual(Hilera literal) { return(valor.Equals(literal.valor)); }
private Objeto Boxing(object valorCSharp) { Objeto resultado = null; Type tipo = valorCSharp == null ? null : valorCSharp.GetType(); if (tipo == typeof(bool)) { resultado = (bool)valorCSharp ? Puppeteer.EventSourcing.Libraries.Boolean.True : Puppeteer.EventSourcing.Libraries.Boolean.False; } else if (tipo == typeof(double)) { resultado = new Puppeteer.EventSourcing.Libraries.Decimal((double)valorCSharp); } else if (valorCSharp == null) { resultado = Puppeteer.EventSourcing.Libraries.Nulo.NULO; } else if (tipo == typeof(decimal)) { resultado = new Puppeteer.EventSourcing.Libraries.Decimal((double)(decimal)valorCSharp); } else if (tipo == typeof(int)) { resultado = new Puppeteer.EventSourcing.Libraries.Numero((int)valorCSharp); } else if (tipo == typeof(string)) { resultado = new Puppeteer.EventSourcing.Libraries.Hilera((System.String)valorCSharp); } else if (tipo == typeof(DateTime)) { DateTime f = (DateTime)valorCSharp; if (f.Hour == 0 && f.Minute == 0 && f.Second == 0) { resultado = new Fecha(f.Day, f.Month, f.Year); } else { resultado = new FechaHora(f.Day, f.Month, f.Year, f.Hour, f.Minute, f.Second); } } else if (tipo == typeof(List <bool>)) { Lista newLista = new Lista(); foreach (bool valor in (List <bool>)valorCSharp) { newLista.guardarObjeto(valor ? Puppeteer.EventSourcing.Libraries.Boolean.True : Puppeteer.EventSourcing.Libraries.Boolean.False); } resultado = newLista; } else if (tipo == typeof(List <double>)) { Lista newLista = new Lista(); foreach (double valor in (List <double>)valorCSharp) { newLista.guardarObjeto(new Puppeteer.EventSourcing.Libraries.Decimal(valor)); } resultado = newLista; } else if (tipo == typeof(List <decimal>)) { Lista newLista = new Lista(); foreach (decimal valor in (List <decimal>)valorCSharp) { newLista.guardarObjeto(new Puppeteer.EventSourcing.Libraries.Decimal((double)valor)); } resultado = newLista; } else if (tipo == typeof(List <int>)) { Lista newLista = new Lista(); foreach (System.Int32 valor in (List <System.Int32>)valorCSharp) { newLista.guardarObjeto(new Puppeteer.EventSourcing.Libraries.Numero(valor)); } resultado = newLista; } else if (tipo == typeof(List <string>)) { Lista newLista = new Lista(); foreach (string valor in (List <String>)valorCSharp) { newLista.guardarObjeto(new Hilera(valor)); } resultado = newLista; } else if (tipo != null && tipo.IsGenericType && tipo.GetGenericTypeDefinition() == typeof(List <>) && tipo.GetGenericArguments().Length == 1 && typeof(Objeto).IsAssignableFrom(tipo.GetGenericArguments()[0])) { Lista newLista = new Lista(); foreach (var valor in (IEnumerable <dynamic>)valorCSharp) { newLista.guardarObjeto((Objeto)valor); } resultado = newLista; } else if (tipo != null && tipo.DeclaringType == typeof(System.Linq.Enumerable) && tipo.GetGenericArguments().Length == 1 && typeof(Objeto).IsAssignableFrom(tipo.GetGenericArguments()[0])) { var x = tipo.DeclaringType; Lista newLista = new Lista(); foreach (var valor in (IEnumerable <dynamic>)valorCSharp) { newLista.guardarObjeto((Objeto)valor); } resultado = newLista; } else { resultado = (Objeto)valorCSharp; } return(resultado); }
public virtual Hilera demeElTipoObjetoAlQuePertenece() { Hilera valor = new Hilera(lista[0].GetType().Name); return(valor); }