Пример #1
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e1.ejecutar();
            Objeto objeto2 = e2.ejecutar();

            return(objeto1.esMayorOIgualQue(objeto2));
        }
Пример #2
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e1.ejecutar();
            Objeto objeto2 = e2.ejecutar();

            return(objeto1.esMenorQue(objeto2));
        }
Пример #3
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e1.ejecutar();
            Objeto objeto2 = e2.ejecutar();

            return(objeto1.multiplicar(objeto2));
        }
Пример #4
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e1.ejecutar();
            Objeto objeto2 = e2.ejecutar();

            return(objeto1.dividir(objeto2));
        }
        public override void Ejecutar()
        {
            if (lValue is IdConPunto)
            {
                IdConPunto referencia = (IdConPunto)lValue;

                string instancia = referencia.instancia();
                if (!tablaDeSimbolos.ExisteLaVariable(instancia))
                {
                    throw new LanguageException(string.Format("No se ha definido la variable {0}. Verifique el nombre", instancia));
                }
                Objeto objeto = tablaDeSimbolos.Valor(instancia);
                Objeto valorDeLaExpresionDerecha = rValue.ejecutar();

                FieldInfo fieldInfo = ObtenerElFieldDelObjetoSiExiste();
                if (fieldInfo != null)
                {
                    fieldInfo.SetValue(objeto, ImplicitCast(UnBoxing(valorDeLaExpresionDerecha), fieldInfo.FieldType));
                    return;
                }

                PropertyInfo propertyInfo = ObtenerElPropertyDelObjetoSiExiste();
                if (propertyInfo != null)
                {
                    propertyInfo.SetValue(objeto, ImplicitCast(UnBoxing(valorDeLaExpresionDerecha), propertyInfo.PropertyType));
                    return;
                }
                else
                {
                    objeto.setAtributo(referencia.Propiedad(), valorDeLaExpresionDerecha);
                }
            }
            else if (lValue is PuntoConPunto)
            {
            }
            else
            {
                string nuevaVariable             = ((Id)lValue).Valor;
                Objeto valorDeLaExpresionDerecha = rValue.ejecutar();
                tablaDeSimbolos.GuardarVariable(nuevaVariable, valorDeLaExpresionDerecha);
            }
        }
Пример #6
0
        public override void Ejecutar()
        {
            Objeto valorDeLaExpresion = expresion.ejecutar();
            bool   cumpleCondicion    = ((EventSourcing.Libraries.Boolean)valorDeLaExpresion).Valor;

            if (cumpleCondicion)
            {
                comandosDelIf.Ejecutar();
            }
            else if (comandosDelElse != null)
            {
                comandosDelElse.Ejecutar();
            }
        }
Пример #7
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e1.ejecutar();
            Objeto objeto2 = e2.ejecutar();

            if (objeto2.GetType() == typeof(Nulo))
            {
                return(objeto2.esIgualQue(objeto1));
            }
            else
            {
                return(objeto1.esIgualQue(objeto2));
            }
        }
Пример #8
0
        public override void Ejecutar()
        {
            if (!salida.EstaEscribiendo())
            {
                return;
            }
            var resultado = expression.ejecutar();

            if (resultado == null)
            {
                throw new LanguageException("La salida de un Print no puede ser nula");
            }
            salida.Append(alias, resultado);
        }
Пример #9
0
        public override void Ejecutar()
        {
            string script          = ((Hilera)expresion.ejecutar()).Valor;
            Salida salidaExpresion = new Salida();
            Parser parser          = new Parser(assembly, tablaDeSimbolos, salidaExpresion);

            parser.EstablecerComando(script);
            Programa programa  = parser.Procesar();
            string   resultado = programa.Ejecutar();

            if (!String.IsNullOrEmpty(resultado) && resultado != "{}")
            {
                resultado = resultado.Substring(1, resultado.Length - 2);
                salida.AppendStream(resultado);
            }
        }
Пример #10
0
        public override void Ejecutar()
        {
            Lista valoresDeLaExpresion = (Lista)expresion.ejecutar();

            tablaDeSimbolos.AbrirBloque();
            salida.AbrirFor();
            for (int i = 0; i < valoresDeLaExpresion.Count(); i++)
            {
                tablaDeSimbolos.GuardarVariable(variable, Nulo.NULO);
                salida.InicioMoveNextDelFor();
                tablaDeSimbolos.GuardarVariable(variable, valoresDeLaExpresion.getObjeto(i));
                cuerpo.Ejecutar();
                salida.FinMoveNextDelFor();
            }
            salida.CerrarFor(variable);
            tablaDeSimbolos.CerrarBloque();
        }
Пример #11
0
        public override Objeto ejecutar()
        {
            Objeto objeto1 = e.ejecutar();

            if (objeto1 is Numero)
            {
                return(objeto1.multiplicar(new Numero(-1)));
            }
            else if (objeto1 is Decimal)
            {
                return(objeto1.multiplicar(new Decimal(-1)));
            }
            else
            {
                throw new BusinessLogicalException(string.Format("No se reconoce la estructura {0}", objeto1.GetType().Name));
            }
        }
Пример #12
0
        public override Objeto ejecutar()
        {
            Objeto objeto1;

            if (CoersionHilera)
            {
                Expresion e = new OpSumar(new LiteralHilera(""), e1);
                objeto1 = e.ejecutar();
            }
            else
            {
                objeto1 = e1.ejecutar();
            }
            if (objeto1.GetType() == typeof(Hilera))
            {
                e2.CoersionHilera = true;
            }
            Objeto objeto2 = e2.ejecutar();

            return(objeto1.sumar(objeto2));
        }
Пример #13
0
 public override Objeto ejecutar()
 {
     EventSourcing.Libraries.Boolean objeto1 = (EventSourcing.Libraries.Boolean)e.ejecutar();
     return(!objeto1.Valor ? EventSourcing.Libraries.Boolean.True : EventSourcing.Libraries.Boolean.False);
 }
Пример #14
0
        public override Objeto ejecutar()
        {
            EventSourcing.Libraries.Boolean objeto1 = (EventSourcing.Libraries.Boolean)e1.ejecutar();
            bool cortoCircuito = !objeto1.Valor;

            if (cortoCircuito)
            {
                return(EventSourcing.Libraries.Boolean.False);
            }
            EventSourcing.Libraries.Boolean objeto2 = (EventSourcing.Libraries.Boolean)e2.ejecutar();
            return(objeto2.Valor ? EventSourcing.Libraries.Boolean.True : EventSourcing.Libraries.Boolean.False);
        }
Пример #15
0
 public override void Ejecutar()
 {
     expresion.ejecutar();
 }