public Constructor(ILenguaje lenguaje) { _lenguaje = lenguaje; IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); _procesadorDePrograma = new ProcesadorDePrograma(repositorio); }
public void ProcesadorDeDeclaraciónDeDeclaraciónStringFunciona() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeDeclaraciónDeString(lenguaje, repositorio); procesador.Procesar("string cadena = \"tex}to\";", new DeclaraciónDeContexto(lenguaje), 0); }
public void ProcesadorDeDeclaraciónDeParámetrosFunciona() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeDeclaraciónDeParámetros(lenguaje, repositorio); procesador.Procesar("int entero, string cadena", new DeclaraciónDeContexto(lenguaje), 0); }
public void ProcesadorDeDeclaraciónDeBoolDeclaraSinValor() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeDeclaraciónDeBool(lenguaje, repositorio); var declaración = new DeclaraciónDeContexto(lenguaje); procesador.Procesar(@"bool a", declaración, 0); }
public void ProcesadorDeEvaluaciónNoSeFumaLosValoresInválidos() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeEvaluación(repositorio); var declaración = new DeclaraciónDeContexto(lenguaje); bool resultado = procesador.Procesar(@"2Pamplinas", declaración, 0); Assert.IsFalse(resultado); }
public void ProcesadorDeEvaluaciónLeeBienLasPosiblesLlamadasAFuncionesConParámetros() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeEvaluación(repositorio); var declaración = new DeclaraciónDeContexto(lenguaje); bool resultado = procesador.Procesar(@"NombreDeFuncion(string paramtero1, int parametro2)", declaración, 0); Assert.IsTrue(resultado); }
public void ProcesadorDeEvaluaciónLeeBienLosPosiblesNombreDeVariables() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeEvaluación(repositorio); var declaración = new DeclaraciónDeContexto(lenguaje); bool resultado = procesador.Procesar(@"NombreDeVariable23", declaración, 0); Assert.IsTrue(resultado); }
public void ProcesadorDeEvaluaciónLeeBienLasCadenasLiterales() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var procesador = new ProcesadorDeEvaluación(repositorio); var declaración = new DeclaraciónDeContexto(lenguaje); bool resultado = procesador.Procesar(@"""pa""mplinas""", declaración, 0); Assert.IsTrue(resultado); }
public void ProcesadorDeDeclaraciónDeParámetrosFunciona() { ILenguaje lenguaje = new LenguajeBase(); IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(lenguaje); var manejador = new ManejadorDeProcesadores(repositorio, null); var procesador = new ProcesadorDeCuerpoDeExpresiones(manejador); var declaración = new DeclaraciónDeContexto(lenguaje); procesador.Procesar(@"int entero = 0;string cadena = ""texto"";", declaración, 0); }
static void Main(string[] args) { IRepositorioDeProcesadores repositorio = new RepositorioDeProcesadores(); IProcesador programa = new ProcesadorDePrograma(repositorio); var código = File.ReadAllText(Directory.GetCurrentDirectory() + "\\" + args[0]); var contexto = new DeclaraciónDePrograma(); programa.Procesar(código, contexto); //manejador.Procesar(@"for(string cadena1=""hey"";;) { string cadena = ""pamplinas""; } "); ////manejador.Procesar(@"for(string cadena1=""hey"";string cadena2 = """";string cadena="""") { string cadena = ""pamplinas""; } "); ////manejador.Procesar(@"for ( string cadena1 = ""valor""; ) "); //manejador.Procesar(@"for ( string cadena=""""; string cadena= ""hey"" ;string hola=""hh"" ) { cuerpo } "); }