7 #ifndef RETDEC_LLVMIR2HLL_SEMANTICS_SEMANTICS_WIN_API_SEMANTICS_H
8 #define RETDEC_LLVMIR2HLL_SEMANTICS_SEMANTICS_WIN_API_SEMANTICS_H
32 virtual std::string
getId()
const override;
34 const std::string &funcName)
const override;
36 const std::string &funcName)
const override;
38 const std::string &funcName)
const override;
39 virtual std::optional<std::string>
getNameOfParam(
const std::string &funcName,
40 unsigned paramPos)
const override;
42 const std::string &funcName,
unsigned paramPos)
const override;
A default semantics which doesn't know anything.
Definition: default_semantics.h:28
Semantics for Windows API.
Definition: win_api_semantics.h:26
virtual std::optional< IntStringMap > getSymbolicNamesForParam(const std::string &funcName, unsigned paramPos) const override
Returns a mapping of integers into their symbolic names for the given parameter of the given function...
Definition: win_api_semantics.cpp:59
virtual std::string getId() const override
Returns the ID of the semantics.
Definition: win_api_semantics.cpp:35
virtual std::optional< std::string > getNameOfVarStoringResult(const std::string &funcName) const override
Returns an appropriate name of the variable that stores the result of calls to the given function.
Definition: win_api_semantics.cpp:49
WinAPISemantics()
Constructs the semantics.
Definition: win_api_semantics.cpp:26
static ShPtr< Semantics > create()
Creates a new semantics.
Definition: win_api_semantics.cpp:31
virtual std::optional< std::string > getCHeaderFileForFunc(const std::string &funcName) const override
Returns the C header file for the given function.
Definition: win_api_semantics.cpp:39
virtual std::optional< std::string > getNameOfParam(const std::string &funcName, unsigned paramPos) const override
Returns an appropriate name of the given function's parameter.
Definition: win_api_semantics.cpp:54
virtual std::optional< bool > funcNeverReturns(const std::string &funcName) const override
Gets the information whether the given function never returns.
Definition: win_api_semantics.cpp:44
A default semantics which doesn't know anything.
A library providing API for working with back-end IR.
std::shared_ptr< T > ShPtr
An alias for a shared pointer.
Definition: smart_ptr.h:18
Definition: archive_wrapper.h:19
Declarations, aliases, macros, etc. for the use of smart pointers.