P4C
The P4 Compiler
Loading...
Searching...
No Matches
extern_info.h
1#ifndef BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_EXTERN_INFO_H_
2#define BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_EXTERN_INFO_H_
3
4#include <sys/types.h>
5
6#include "ir/id.h"
7#include "ir/ir.h"
8#include "ir/vector.h"
9
10namespace P4::P4Tools::P4Testgen {
11
15 public:
17 const IR::MethodCallExpression &originalCall;
19 const IR::PathExpression &externObjectRef;
24
25 ExternInfo(const IR::MethodCallExpression &originalCall,
26 const IR::PathExpression &externObjectRef, const IR::ID &methodName,
32
34 ExternInfo &operator=(const ExternInfo &) = delete;
35 ExternInfo &operator=(ExternInfo &&) = delete;
36};
37
38} // namespace P4::P4Tools::P4Testgen
39
40#endif /* BACKENDS_P4TOOLS_MODULES_TESTGEN_CORE_EXTERN_INFO_H_ */
Definition vector.h:59
Definition extern_info.h:14
const IR::Vector< IR::Argument > & externArguments
Arguments to the extern method.
Definition extern_info.h:23
const IR::MethodCallExpression & originalCall
Reference to the original P4 extern call.
Definition extern_info.h:17
const IR::ID & methodName
Name of the extern method.
Definition extern_info.h:21
ExternInfo & operator=(const ExternInfo &)=delete
Do not accidentally copy-assign the extern info. It is only passed as reference.
const IR::PathExpression & externObjectRef
Name of the extern object the call was a member of, if any.
Definition extern_info.h:19
Definition id.h:28