def main(): #Procesar parametros de entrada parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument('-fIN', nargs=1,required=True,help='Fichero Entrada') parser.add_argument('-fOUT', nargs=1,required=True,help='Fichero Salida') opts = parser.parse_args() fIN=opts.fIN[0] fOUT=opts.fOUT[0] #Instanciar clases de proceso escribir=Flujo.escribirFichero(fOUT) #PASADA2--------------------------------------------------------------------------------------------- #PROCESAMIENTO DE LLAMADAS A PADRE fluB3=Flujo.sustituirCadenasRe(escribir,"(?P<INICIO>.*)(?P<ANTERIOR>[\s!\(=])(?P<VARIABLE>[a-zA-Z0-9_\.]+)\.__(?P<FUNCION>[a-zA-Z0-9_]+)\((?P<FIN>.*)","{INICIO}{ANTERIOR}super({CTX_CLASSNAME},{VARIABLE}).{FUNCION}({FIN}") fluB4=Flujo.setCTXRe(fluB3,"(.*)class\s+(?P<CTX_CLASSNAME>[a-zA-Z0-9_]+)\s(.*){") #INCLUSION FUENTES DE CLASES #Se estableceran listas al terminar fluBL=Flujo.sustituirCadenas(fluB4,[],[]) bufffer2PAs=Flujo.buffer(fluBL) #PASADA1--------------------------------------------------------------------------------------------- #ELIMINADO Y ALMACENADO DE CADENAS IMPLEMENTACION DE CLASES #DEBE SER EL ULTIMO PARA QUE SE REALICEN CAMBIOS ANTERIORES flu0=Flujo.almacenarCadenasReg(bufffer2PAs,"(?P<INICIO>.*)@class_definition\s+(?P<NOMBRE>[a-zA-Z0-9_]+) (?P<FIN>.*)","//__CLASE[{NOMBRE}]",fluBL) #TOCKEN PARA MARCAR ELEMENTOS NO EN PYTHON flu1=Flujo.eliminaEntre(flu0,"___NOPYTHON[[","]]___NOPYTHON") #SUSTITUIR PASS flu2=Flujo.sustituirCadenas(flu1," pass "," mpass ") #SUSTITUIR LISTA Y DICCIONARIO VACIO flu3=Flujo.sustituirCadenas(flu2,["[]","{}"],["qsatype.Array()","qsatype.Object()"]) #INCLUIR TOCKEN EN DEFINICION DE CLASES PARA PODER LUEGO AMPLIARLAS #dos filas flu4=Flujo.sustituirCadenasReMultipleFila(flu3,2,"(?P<INICIO>.*)class\s+(?P<NOMBRE>[a-zA-Z0-9_]+) (?P<FIN>.*)\n\s*{(?P<FILA2>.*)","{INICIO} class {NOMBRE} {FIN} {{\n//__CLASE[{NOMBRE}]\n{FILA2}") #fila Simple flu41=Flujo.sustituirCadenasRe(flu4,"(?P<INICIO>.*)class\s+(?P<NOMBRE>[a-zA-Z0-9_]+) (?P<FIN>.*){","{INICIO} class {NOMBRE} {FIN} {{\n//__CLASE[{NOMBRE}]") fluL=flu41 leer=Flujo.leeFichero(fluL,fIN) leer.inicioProceso()