コード例 #1
0
        public ManejadorDeEvaluación(IRepositorioDeProcesadores repositorioDeProcesadores, IEvaluador evaluador)
        {
            IProcesadorSucesible procesadorDeLiteralInt      = repositorioDeProcesadores.ObtenerProcesadorDeLiteralInt(evaluador),
                                 procesadorDeLiteralString   = repositorioDeProcesadores.ObtenerProcesadorDeLiteralString(evaluador),
                                 procesadorDeLiteralBool     = repositorioDeProcesadores.ObtenerProcesadorDeLiteralBool(evaluador),
                                 procesadorDeValorDeVariable = repositorioDeProcesadores.ObtenerProcesadorDeApilaciónDeVariable(evaluador),
                                 procesadorDeLlamadaAFunción = repositorioDeProcesadores.ObtenerProcesadorDeLlamadaFunción(evaluador);

            _inicial = procesadorDeLiteralInt;
            procesadorDeLiteralInt.EstablecerSucesor(procesadorDeLiteralString);
            procesadorDeLiteralString.EstablecerSucesor(procesadorDeLiteralBool);
            procesadorDeLiteralBool.EstablecerSucesor(procesadorDeValorDeVariable);
            procesadorDeValorDeVariable.EstablecerSucesor(procesadorDeLlamadaAFunción);
        }
コード例 #2
0
        public ManejadorDeProcesadores(IRepositorioDeProcesadores repositorioDeProcesadores, IEvaluador evaluador)
        {
            _repositorioDeProcesadores = repositorioDeProcesadores;

            var procesadorDeBucleFor = _repositorioDeProcesadores.ObtenerProcesadorDeBucleFor();

            _inicial = procesadorDeBucleFor;

            var procesadorDeVariables            = _repositorioDeProcesadores.ObtenerProcesadorDeDeclaraciónDeVariable();
            var procesadorDeDeclaraciónDeFunción = repositorioDeProcesadores.ObtenerProcesadorDeDeclaraciónDeFunción();
            var procesadorDeAsignación           = _repositorioDeProcesadores.ObtenerProcesadorDeAsignación();
            var procesadorDeLlamadaFunción       = _repositorioDeProcesadores.ObtenerProcesadorDeLlamadaFunción(evaluador);
            var procesadorDeRetornoDeValor       = _repositorioDeProcesadores.ObtenerProcesadorDeRetornoDeValor();

            procesadorDeBucleFor.EstablecerSucesor(procesadorDeDeclaraciónDeFunción);
            procesadorDeDeclaraciónDeFunción.EstablecerSucesor(procesadorDeLlamadaFunción);
            procesadorDeLlamadaFunción.EstablecerSucesor(procesadorDeVariables);
            procesadorDeVariables.EstablecerSucesor(procesadorDeAsignación);
            procesadorDeAsignación.EstablecerSucesor(procesadorDeRetornoDeValor);
        }