Esempio n. 1
0
def generar_codigo_3d(entrada):
    ast = parserTo3D(entrada)
    graficador = AST()
    graficador.makeAst(ast.dot())
    #Ejectamos el c3d de cada funcion, procedimiento
    for func in envFunction.functions.values():
        func.generate3d(None, instancia_codigo3d)
    for proc in envProcedure.procedures.values():
        proc.generate3d(None, instancia_codigo3d)

    lErrors = gramaticaFase2.returnLexicalErrors()
    sErrors = gramaticaFase2.returnSyntacticErrors()
    semanticErrors = gramaticaFase2.returnSemanticErrors()
    #Agrega los especiales
    instruction.envVariables.append(indexEnv)
    instruction.envVariables.append(envFunction)
    instruction.envVariables.append(envProcedure)
    symbols = symbolReport()
    obj = {
        "err_lexicos": lErrors,
        "err_sintacticos": sErrors,
        "semantic": semanticErrors,
        "symbols": symbols,
    }
    BnfGrammar.grammarReport2()  # ! DESCOMENTAR EN EL COMMIT FINAL :v
    return obj
Esempio n. 2
0
def generar_codigo_3d(entrada):
    parserTo3D(entrada)
    lErrors = gramaticaFase2.returnLexicalErrors()
    sErrors = gramaticaFase2.returnSyntacticErrors()
    symbols = symbolReport()
    obj = {
        "err_lexicos": lErrors,
        "err_sintacticos": sErrors,
        #"semantic": semanticErrors,
        "symbols": symbols,
    }
    astReport()
    BnfGrammar.grammarReport2()
    return obj