1#ifndef BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_SMALL_STEP_CMD_STEPPER_H_
2#define BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_SMALL_STEP_CMD_STEPPER_H_
10#include "lib/cstring.h"
12#include "backends/p4tools/modules/testgen/core/program_info.h"
13#include "backends/p4tools/modules/testgen/core/small_step/abstract_stepper.h"
14#include "backends/p4tools/modules/testgen/lib/continuation.h"
15#include "backends/p4tools/modules/testgen/lib/execution_state.h"
17namespace P4::P4Tools::P4Testgen {
24 bool preorder(
const IR::AssignmentStatement *assign)
override;
25 bool preorder(
const IR::P4Parser *p4parser)
override;
26 bool preorder(
const IR::P4Control *p4control)
override;
27 bool preorder(
const IR::EmptyStatement *empty)
override;
28 bool preorder(
const IR::IfStatement *ifStatement)
override;
29 bool preorder(
const IR::MethodCallStatement *methodCallStatement)
override;
30 bool preorder(
const IR::P4Program *program)
override;
31 bool preorder(
const IR::ParserState *parserState)
override;
32 bool preorder(
const IR::BlockStatement *block)
override;
33 bool preorder(
const IR::ExitStatement *e)
override;
34 bool preorder(
const IR::SwitchStatement *switchStatement)
override;
44 virtual std::optional<const Constraint *>
startParserImpl(
const IR::P4Parser *parser,
Provides a higher-level interface for an SMT solver.
Definition solver.h:24
A continuation body is a list of commands.
Definition continuation.h:129
IR::Expression Constraint
Represents a constraint that can be shipped to and asserted within a solver.
Definition solver.h:17
Definition phv/solver/action_constraint_solver.cpp:33