Exemplo n.º 1
0
def analizador():
    '''
        Se obtiene el texto del text area
        se pasa el parser y se ejecuta el patron interprete
    '''
    my_text1.delete("1.0", END)

    try:
        cadena = my_text.get("1.0", END)

        result: Arbol = AnaParse(cadena)

        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()

        for item in result.instrucciones:
            item.execute(entornoCero, result)

        consola = ""
        for item in result.console:
            consola = consola + item

        my_text1.insert(END, consola)

        global arboAux_errores

        arboAux_errores = result

    except:
        print(traceback)
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 2
0
def Seleccionar():
    try:
        cadena = my_text.get(SEL_FIRST, SEL_LAST)

        result: Arbol = AnaParse(cadena)
        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()
        print(result)
        for item in result.instrucciones:
            item.traducir(entornoCero, result)
        print("C3D generado:")
        print(result.getC3D())

        consola = result.getC3D()
        consola = consola + '\n\n' + result.getC3D_funciones()

        for i in result.ReporteTS:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('----------------------------------------------')

        for i in result.ReporteTS_Funciones:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('Estado: ' + str(i.estado))
            print('----------------------------------------------')

        print('---------------------INDICES-------------------------')
        for i in result.ReporteTS_Indice:
            print('Nombre: ' + str(i.nombre))

            print('columnas ======== ')
            for col in i.columnas:
                print('col: ' + str(col))

            print('consideracion: ' + str(i.consideracion))
            print('Tipo: ' + str(i.tipo))
            print('Posicion: ' + str(i.fila)+ str(i.columna))
            print('----------------------------------------------')

        #for item in result.console:
        #    consola = consola + item

        my_text1.insert(END, consola)
        print('SIntactico realizado con exito')

        global arboAux_errores

        arboAux_errores = result

    except:
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 3
0
def analizador():
    '''
        Se obtiene el texto del text area
        se pasa el parser y se ejecuta el patron interprete
    '''
    my_text1.delete("1.0", END)

    try:
        my_text1.delete("1.0", END)
        cadena = my_text.get("1.0", END)

        result: Arbol = AnaParse(cadena)
        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()
        print(result)
        for item in result.instrucciones:
            if item == None:
                pass
            else:
                item.traducir(entornoCero, result)
        print("C3D generado:")
        print(result.getC3D())

        consola = 'def main(): \n'
        consola = consola + result.getC3D()
        consola = consola + '\n\n' + result.getC3D_funciones()

        for i in result.ReporteTS:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('----------------------------------------------')

        for i in result.ReporteTS_Funciones:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('Estado: ' + str(i.estado))
            print('----------------------------------------------')
        # for item in result.console:
        #    consola = consola + item

        my_text1.insert(END, consola)
        print('SIntactico realizado con exito')

        global arboAux_errores

        arboAux_errores = result

    except:
        print(traceback)
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 4
0
def Seleccionar():
    try:
        cadena = my_text.get(SEL_FIRST, SEL_LAST)
        print('>> ' + cadena)

        result: Arbol = AnaParse(cadena)
        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()

        for item in result.instrucciones:
            item.execute(entornoCero, result)

        consola = ""
        for item in result.console:
            consola = consola + item

        my_text1.insert(END, consola)
    except:
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 5
0
def analizador():
    '''
        Se obtiene el texto del text area
        se pasa el parser y se ejecuta el patron interprete
    '''
    global cadena, dotString
    my_text1.delete("1.0", END)

    try:
        cadena = my_text.get("1.0", END)

        result: Arbol = AnaParse(cadena)
        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()

        for item in result.instrucciones:
            item.execute(entornoCero, result)

        my_text1.insert(END, result)

    except:
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 6
0
def Seleccionar():
    try:
        cadena = my_text.get(SEL_FIRST, SEL_LAST)

        result: Arbol = AnaParse(cadena)
        #entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        #entornoCero.NuevoAmbito()
        #print(result)
        #for item in result.instrucciones:
        #    item.traducir(entornoCero, result)
        #print("C3D generado:")
        #print(result.getC3D())

        #consola = result.getC3D()
        #consola = consola + '\n\n' + result.getC3D_funciones()

        #for i in result.ReporteTS:
        #    print('Nombre: ' + str(i.nombre))
        #    print('Tipo: ' + str(i.tipo))
        #    print('----------------------------------------------')

        #for i in result.ReporteTS_Funciones:
        #    print('Nombre: ' + str(i.nombre))
        #    print('Tipo: ' + str(i.tipo))
        #    print('Estado: ' + str(i.estado))
        #    print('----------------------------------------------')
        ##for item in result.console:
        ##    consola = consola + item

        #my_text1.insert(END, consola)
        print('SIntactico realizado con exito')

        global arboAux_errores

        arboAux_errores = result

    except:
        my_text1.insert(END, 'Ocurrio un error al compilar')
Exemplo n.º 7
0
def analizador():
    '''
        Se obtiene el texto del text area
        se pasa el parser y se ejecuta el patron interprete
    '''
    my_text1.delete("1.0", END)

    try:
        my_text1.delete("1.0", END)
        cadena = my_text.get("1.0", END)

        result: Arbol = AnaParse(cadena)
        entornoCero: Tabla_de_simbolos = Tabla_de_simbolos()
        entornoCero.NuevoAmbito()
        print('Nodo abstracto < ARBOL > :')
        print(result)
        print('------------------------------------- > Buen viaje tytus-G17')

        for item in result.instrucciones:
            if item == None:
                pass
            else:
                try:
                    item.traducir(entornoCero, result)
                except:
                    pass

        #print("C3D generado:")
        #print(result.getC3D())

        consola = 'def main(): \n'
        consola = consola + result.getC3D()
        consola = consola + '\n\n' + result.getC3D_funciones()

        for i in result.ReporteTS:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('----------------------------------------------')

        for i in result.ReporteTS_Funciones:
            print('Nombre: ' + str(i.nombre))
            print('Tipo: ' + str(i.tipo))
            print('Estado: ' + str(i.estado))
            print('----------------------------------------------')
        # for item in result.console:
        #    consola = consola + item

        my_text1.insert(END, consola)
        print('SIntactico realizado con exito')

        try:
            global COD3D
            COD3D += '\t' + 'global heap' + '\n'
            COD3D += '\t' + 'sql: Sql = Sql()' + '\n'
            COD3D += '\t' + 'result = str(sql.query(heap))' + '\n'
            COD3D += '\t' + 'return result' + '\n\n'

            COD3D += '@with_goto' + '\n' + 'def principal():'
            COD3D += '\n'
            COD3D += result.getC3D()

            COD3D += '\n'
            COD3D += '\n'
            COD3D += """if __name__ == '__main__':\n"""
            COD3D += '\t' + 'principal()'
        except:
            pass

        global arboAux_errores

        arboAux_errores = result

    except:
        print(traceback)
        my_text1.insert(END, 'Ocurrio un error al compilar')