Esempio n. 1
0
def ejec_ascendente():
    global ts_debug, no_instruccion, waitForCommand, ejecucion_automatica
    ejecucion_automatica=1
    cont=editor.get("1.0",END)
    waitForCommand=0
    Inter.inicializarGUI(editor,consola)
    Inter.limpiarValores()
    Inter.inicializarEjecucionAscendente(cont)
    Inter.inicializarTS()
    i=0
    while i<len(Inter.instrucciones):
        if waitForCommand==0 or waitForCommand==2: #0=Sin Entrada, 1=Esperando, 2=Comando Ingresado
            if i<len(Inter.instrucciones) :
                is_asig=Inter.instrucciones[i]
                if isinstance(is_asig,Asignacion): 
                    # COMANDO PARA LEER DE CONSOLA
                    if isinstance(is_asig.valor,Read) and waitForCommand==0:
                        waitForCommand=1
                        no_instruccion=i
                        return None
                #EJECUTAR INSTRUCCION
                instr_temp=Inter.ejecutarInstruccionUnitaria(1,i)
                if instr_temp is not None:
                    if instr_temp==-10 : # EXIT
                        i=len(Inter.instrucciones)
                    else: #GOTO
                        i=instr_temp
                waitForCommand=0
            else:
                MessageBox.showinfo("Finalizado","Ultima instruccion ejecutada.")
        i=i+1
Esempio n. 2
0
    def Seleccionar(self):
        cadena = ""
        cadena2 = ""
        self.consola.delete(1.0, "end")
        self.miVentana.title("TytusDB G16")
        Lista.clear()
        listaGeneral.clear()
        Modificaciones.clear()
        listaGeneralSubQuery.clear()
        Ejecucion = ""

        try:
            cadena = self.entrada.get(SEL_FIRST, SEL_LAST)
            nueva = str(cadena).upper()
            print(nueva)
            Inter.inicializarEjecucionAscendente(cadena)
            if len(Lista) > 0:
                self.consola.insert('insert', Lista[0])
            else:
                return
        except:
            cadena2 = self.entrada.get(1.0, "end-1c")
            nuevaV = str(cadena2).upper()
            print(nuevaV)
            Inter.inicializarEjecucionAscendente(cadena2)

            if len(Lista) > 0:
                self.consola.insert('insert', Lista[0])
            else:
                return
Esempio n. 3
0
def iniciar_debug():
    global no_instruccion,ejecucion_automatica
    ejecucion_automatica=0
    no_instruccion=0
    Inter.inicializarGUI(editor,consola)
    Inter.limpiarValores()
    cont=editor.get("1.0",END)
    Inter.inicializarEjecucionAscendente(cont)
    Inter.inicializarTS()
Esempio n. 4
0
def ejec_ascendente():

    cont1 = editor.get("1.0", END)
    ast = analize(cont1)
    if ast != None:
        analizeAST(cont1)
        fileAugus = translate(ast)

        file1 = open('un-optimized.augus', 'w')
        file1.write(fileAugus)
        file1.close()

        from Optimizer import optimize

    else:
        fileAugus = ''

    global ts_debug, no_instruccion, waitForCommand, ejecucion_automatica
    ejecucion_automatica = 1
    cont = editor.get("1.0", END)
    waitForCommand = 0
    Inter.inicializarGUI(editor, consola)
    Inter.limpiarValores()
    Inter.inicializarEjecucionAscendente(fileAugus)
    Inter.inicializarTS()
    i = 0
    while i < len(Inter.instrucciones):
        if waitForCommand == 0 or waitForCommand == 2:  #0=Sin Entrada, 1=Esperando, 2=Comando Ingresado
            if i < len(Inter.instrucciones):
                is_asig = Inter.instrucciones[i]
                if isinstance(is_asig, Asignacion):
                    # COMANDO PARA LEER DE CONSOLA
                    if isinstance(is_asig.valor, Read) and waitForCommand == 0:
                        waitForCommand = 1
                        no_instruccion = i
                        return None
                #EJECUTAR INSTRUCCION
                instr_temp = Inter.ejecutarInstruccionUnitaria(1, i)
                if instr_temp is not None:
                    if instr_temp == -10:  # EXIT
                        i = len(Inter.instrucciones)
                    else:  #GOTO
                        i = instr_temp
                waitForCommand = 0
            else:
                MessageBox.showinfo("Finalizado",
                                    "Ultima instruccion ejecutada.")
        i = i + 1
Esempio n. 5
0
def ejecutarSQL():
    cadena = heap[-1]

    nueva = str(cadena).upper()
    #print(nueva)
    Inter.inicializarEjecucionAscendente(cadena)
Esempio n. 6
0
 def enviarDatos(self):
     contenido = self.entrada.get(1.0, "end-1c")
     self.consola.insert('insert', contenido)
     Inter.inicializarEjecucionAscendente(contenido)