7 #include <hilti/ast/type.h> 8 #include <hilti/ast/types/unknown.h> 24 :
TypeBase(nodes(std::move(etype)), std::move(m)), _const(const_) {}
26 :
TypeBase(nodes(type::unknown), std::move(m)), _wildcard(
true), _const(const_) {}
32 auto isEqual(
const Type& other)
const {
return node::isEqual(
this, other); }
47 bool _wildcard =
false;
68 auto isEqual(
const Type& other)
const {
return node::isEqual(
this, other); }
71 return type::detail::isResolved(iteratorType(
true), rstate) &&
72 type::detail::isResolved(iteratorType(
false), rstate);
77 const Type&
iteratorType(
bool const_)
const {
return const_ ? child<Type>(0) : child<Type>(1); }
85 bool operator==(
const Set& other)
const {
return elementType() == other.
elementType(); }
88 bool _wildcard =
false;
auto isWildcard() const
Definition: set.h:38
auto isEqual(const Type &other) const
Definition: set.h:32
auto _isResolved(ResolvedState *rstate) const
Definition: set.h:70
const auto & children() const
Definition: node.h:472
const Type & elementType() const
Definition: set.h:75
auto _isResolved(ResolvedState *rstate) const
Definition: set.h:34
auto typeParameters() const
Definition: set.h:81
auto properties() const
Definition: set.h:83
auto isEqual(const Type &other) const
Definition: set.h:68
auto typeParameters() const
Definition: set.h:40
std::map< std::string, node::detail::PropertyValue > Properties
Definition: node.h:98
const Type & iteratorType(bool const_) const
Definition: set.h:77
const Type & dereferencedType() const
Definition: set.h:36
bool isConstant() const
Definition: set.h:29
auto isWildcard() const
Definition: set.h:79
auto properties() const
Definition: set.h:42