36 auto vs_object_factory =
45 std::unique_ptr<ai_history_factory_baset> hf =
nullptr;
65 std::unique_ptr<ai_domain_factory_baset> df =
nullptr;
79 vs_object_factory, vsd_config);
86 std::unique_ptr<ai_storage_baset> st =
nullptr;
98 if(hf !=
nullptr && df !=
nullptr && st !=
nullptr)
103 std::move(hf), std::move(df), std::move(st), mh);
111 std::move(hf), std::move(df), std::move(st), mh);
131 goto_model.
goto_functions, ns, vs_object_factory, vsd_config, mh);
136 vs_object_factory, vsd_config);
std::unique_ptr< ai_baset > build_analyzer(const optionst &options, const goto_modelt &goto_model, const namespacet &ns, message_handlert &mh)
Ideally this should be a pure function of options.
History for tracking the call stack and performing interprocedural analysis.
An easy factory implementation for histories that don't need parameters.
Track function-local control flow for loop unwinding and path senstivity.
There are different ways of handling arrays, structures, unions and pointers.