Ethgoin commited on
Commit
3fdac99
verified
1 Parent(s): 267e35d

third update to App.py

Browse files
Files changed (1) hide show
  1. app.py +9 -9
app.py CHANGED
@@ -4,26 +4,26 @@ from lexer import lexer
4
  from parser import Parser
5
  from semantico import AnalizadorSemantico
6
 
7
- def analizar_codigo(archivo):
8
- with open(archivo, "r", encoding="utf-8") as f:
9
- contenido = f.read()
 
10
  tokens = lexer(contenido)
11
  parser = Parser(tokens)
12
  ast = parser.parse()
13
  analizador = AnalizadorSemantico(ast)
14
  resultado = analizador.analizar()
15
- errores = "\n".join(resultado["errores_semanticos"])
16
- json_resultado = json.dumps(resultado, indent=2)
17
- return errores, json_resultado
18
  except Exception as e:
19
  return f"Error: {e}", "{}"
20
 
21
  gr.Interface(
22
  fn=analizar_codigo,
23
- inputs=gr.File(label="Sube un archivo de c贸digo"),
24
  outputs=[
25
  gr.Textbox(label="Errores detectados"),
26
  gr.Code(label="Contenido de analisis.json", language="json")
27
  ],
28
- title="Analizador Sem谩ntico en Python - Lenguaje de Robots"
29
- ).launch()
 
4
  from parser import Parser
5
  from semantico import AnalizadorSemantico
6
 
7
+ def analizar_codigo(archivo_ruta):
8
+ try:
9
+ with open(archivo_ruta, "r", encoding="utf-8") as f:
10
+ contenido = f.read()
11
  tokens = lexer(contenido)
12
  parser = Parser(tokens)
13
  ast = parser.parse()
14
  analizador = AnalizadorSemantico(ast)
15
  resultado = analizador.analizar()
16
+ errores = "\\n".join(resultado["errores_semanticos"])
17
+ return errores, json.dumps(resultado, indent=2)
 
18
  except Exception as e:
19
  return f"Error: {e}", "{}"
20
 
21
  gr.Interface(
22
  fn=analizar_codigo,
23
+ inputs=gr.File(label="Sube tu archivo de c贸digo (.txt)"),
24
  outputs=[
25
  gr.Textbox(label="Errores detectados"),
26
  gr.Code(label="Contenido de analisis.json", language="json")
27
  ],
28
+ title="Analizador Sem谩ntico - Lenguaje de Robots"
29
+ ).launch()