Exemple #1
0
            head, body = gramObject.creatTableLL1()
            print(json.dumps({"Head": head, "Body": body, "message": True}))
        #Analizar una cadena con LL1
        elif (sys.argv[2] == "StringLL1"):
            fileObjRead = open(fileGrammar, 'rb')
            pathStringGrammar = pickle.load(fileObjRead)
            fileObjRead.close()
            #Creamos la gramatica
            gramObj = Grammar(pathStringGrammar)
            #Crear analizador Lexico
            pathLex = sys.argv[4]
            lexAn = LexAnalizer.createLexFile(pathLex, sys.argv[3])
            #Crear diccinario
            dictStr = createDictFile(sys.argv[5])
            #Analizar la cadena
            stack, string, action = gramObj.analizeStr(sys.argv[3], lexAn,
                                                       dictStr)
            print(
                json.dumps({
                    "Stack": stack,
                    "String": string,
                    "Action": action,
                    "message": True
                }))

        #Crear Tabla LRO
        elif (sys.argv[2] == "PathLR0"):
            #Creamos un objeto gramatica y guardamos
            fileObjectGrammar = open(fileGrammar, 'wb')
            gramObject = Grammar(sys.argv[3])
            pickle.dump(sys.argv[3], fileObjectGrammar)
            fileObjectGrammar.close()