#include "smt_sorts.h"
#include <util/invariant.h>
#include "smt_sorts.def"
Go to the source code of this file.
◆ SORT_ID [1/4]
#define SORT_ID |
( |
| the_id | ) |
const irep_idt ID_smt_##the_id##_sort{"smt_" #the_id "_sort"}; |
◆ SORT_ID [2/4]
#define SORT_ID |
( |
| the_id | ) |
|
Value: template <> \
{ \
return id() == ID_smt_##the_id##_sort \
? static_cast<const smt_##the_id##_sortt *>(this) \
: nullptr; \
}
const irep_idt & id() const
const sub_classt * cast() const &
Definition at line 8 of file smt_sorts.cpp.
◆ SORT_ID [3/4]
#define SORT_ID |
( |
| the_id | ) |
|
Value: template <> \
{ \
if(id() == ID_smt_##the_id##_sort) \
return {std::move(*static_cast<const smt_##the_id##_sortt *>(this))}; \
else \
return {}; \
}
nonstd::optional< T > optionalt
Definition at line 8 of file smt_sorts.cpp.
◆ SORT_ID [4/4]
#define SORT_ID |
( |
| the_id | ) |
|
Value: if(id == ID_smt_##the_id##_sort) \
return visitor.visit(static_cast<const smt_##the_id##_sortt &>(sort));
Definition at line 8 of file smt_sorts.cpp.
◆ accept()
template<typename visitort >