コード例 #1
0
ファイル: Main.py プロジェクト: esnorki2008/MinorC
 def analizar_minor_c(self,cadena_entrada):
     tab = TablaDeSimbolos(None)
     self.lst_repo_grama = []
     self.raiz_arbol = None
     self.lst_historial_variables = []
     rst = analizar_ascendente(cadena_entrada,self.lst_repo_grama,tab)
     if rst is None :
         self.lst_errores = tab.lst_errores
         print("Error")
     else:
         
         self.raiz_arbol = rst
         from AProyecto2.Contenido.Instrucciones.Listas.ListaMetodos import ListaMetodos
         self.lst_metodos_declarados = []
         if isinstance(rst,ListaMetodos):
             rst.reporte_metodos(self.lst_metodos_declarados)
         #print(rst.str_arbol());
         rst.ejecutar_3D(tab)
         self.lst_historial_variables = tab.lst_historial_variables
         tab.lst_historial_variables = []
         tab.terminar_codigo_3d()
         self.lst_errores = tab.lst_errores
         #from Contenido.Optimo import Optimo
         #Optm:Optimo = Optimo(tab.codigo_3d)
         #lst_sal = Optm.codigo_optimizado()
         return tab.string_codigo_3d(tab.codigo_3d)
コード例 #2
0
ファイル: Main.py プロジェクト: esnorki2008/Interprete
def analizar_minor_c(cadena_entrada):
    tab = TablaDeSimbolos(None)
    lst_repo_grama = []
    rst = analizar_ascendente(cadena_entrada, lst_repo_grama)
    if rst is None:
        print("Error")
    else:
        #print(rst.str_arbol());
        rst.ejecutar_3D(tab)
        tab.terminar_codigo_3d()
        #from Contenido.Optimo import Optimo
        #Optm:Optimo = Optimo(tab.codigo_3d)
        #lst_sal = Optm.codigo_optimizado()
        return tab.string_codigo_3d(tab.codigo_3d)