1#ifndef BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_EXTERNS_H_
2#define BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_EXTERNS_H_
16#include "lib/cstring.h"
18#include "backends/p4tools/modules/testgen/core/small_step/small_step.h"
19#include "backends/p4tools/modules/testgen/lib/execution_state.h"
21namespace P4Tools::P4Testgen {
40 bool exec(
const IR::MethodCallExpression *call,
const IR::Expression *receiver,
IR::ID &name,
42 SmallStepEvaluator::Result &result)
const;
46 using MethodImpl = std::function<void(
const IR::MethodCallExpression *,
const IR::Expression *,
54 std::map<cstring, std::map<uint, std::list<std::pair<std::vector<cstring>,
MethodImpl>>>> impls;
59 static bool matches(
const std::vector<cstring> ¶mNames,