理解并遵循smt2lib解析器的z3主源代码

时间:2016-04-06 14:57:22

标签: z3

我想了解z3主源代码。我跟着主文件中的调用来输入smt2类型。对于这种类型的输入主文件,通过以下代码调用smtlib_frontend文件(第341行):

h5f['lstm_X']= 0,1

然后此方法通过(第128行)调用smt2parser:

case IN_SMTLIB_2:
memory::exit_when_out_of_memory(true, "(error \"out of memory\")");
return_value = read_smtlib2_commands(g_input_file);
 break;

在smt2parser.cpp和被调用的方法中:

 result = parse_smt2_commands(ctx, in); 

}

我有2个问题:  第一:p()是什么意思?解析器类只有一个构造函数(解析器(ctx,is,interactive,ps)),并且没有任何名为p的方法。

第二:调用此方法后,调用者图将被断开,而此文件是解析z3中smt2lib的主类,并且有一个名为“parse_cmd()”的方法,这似乎是启动解析的主要方法操作。但是对这种方法没有任何反思。

0 个答案:

没有答案