1#ifndef BACKENDS_P4TOOLS_MODULES_SMITH_CORE_TARGET_H_ 
    2#define BACKENDS_P4TOOLS_MODULES_SMITH_CORE_TARGET_H_ 
    7#include "backends/p4tools/common/compiler/compiler_target.h" 
    8#include "backends/p4tools/modules/smith/common/declarations.h" 
    9#include "backends/p4tools/modules/smith/common/expressions.h" 
   10#include "backends/p4tools/modules/smith/common/parser.h" 
   11#include "backends/p4tools/modules/smith/common/statements.h" 
   12#include "backends/p4tools/modules/smith/common/table.h" 
   15namespace P4Tools::P4Smith {
 
   26    [[nodiscard]] 
virtual const IR::P4Program *generateP4Program() 
const = 0;
 
   35    explicit SmithTarget(
const std::string &deviceName, 
const std::string &archName);