mirror of
https://github.com/Z3Prover/z3
synced 2026-07-05 14:56:11 +00:00
This is another PR towards the goal of getting Z3 to compile cleanly when included via FetchContents into clang-tidy, which uses a pretty strict set of warnings. This is a second version of https://github.com/Z3Prover/z3/pull/9957. I address @NikolajBjorner 's comments about not changing the semicolons after macro invocations, because some editors work better with them present. It now, to the best of my ability, only deletes semis: * after the closing brace of namespace decl. * after the closing brace of an extern "C" decl. * after a function definition. This PR is very large, but it consists entirely of deletions of semicolons in these situations. (If there was a way to update the previous PR, which had been closed, and that is preferable, please let me know. I couldn't figure it out.)
43 lines
823 B
C++
43 lines
823 B
C++
/*++
|
|
Copyright (c) 2013 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
tab_context.h
|
|
|
|
Abstract:
|
|
|
|
Tabulation/subsumption/cyclic proof context.
|
|
|
|
Author:
|
|
|
|
Nikolaj Bjorner (nbjorner) 2013-01-15
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
#pragma once
|
|
|
|
#include "ast/ast.h"
|
|
#include "util/lbool.h"
|
|
#include "util/statistics.h"
|
|
#include "muz/base/dl_engine_base.h"
|
|
|
|
namespace datalog {
|
|
class context;
|
|
|
|
class tab : public engine_base {
|
|
class imp;
|
|
imp* m_imp;
|
|
public:
|
|
tab(context& ctx);
|
|
~tab() override;
|
|
lbool query(expr* query) override;
|
|
void cleanup() override;
|
|
void reset_statistics() override;
|
|
void collect_statistics(statistics& st) const override;
|
|
void display_certificate(std::ostream& out) const override;
|
|
expr_ref get_answer() override;
|
|
};
|
|
}
|
|
|