diff options
Diffstat (limited to 'src/hir/path.hpp')
-rw-r--r-- | src/hir/path.hpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/hir/path.hpp b/src/hir/path.hpp index 89eddba1..d56b11a9 100644 --- a/src/hir/path.hpp +++ b/src/hir/path.hpp @@ -1,4 +1,5 @@ - +/* + */ #ifndef _HIR_PATH_HPP_ #define _HIR_PATH_HPP_ #pragma once @@ -6,11 +7,19 @@ #include <common.hpp> #include <tagged_union.hpp> #include <hir/type_ptr.hpp> +#include <span.hpp> namespace HIR { class Trait; +typedef ::std::function<const ::HIR::TypeRef&(const ::HIR::TypeRef&)> t_cb_resolve_type; +enum Compare { + Equal, + Fuzzy, + Unequal, +}; + /// Simple path - Absolute with no generic parameters struct SimplePath { @@ -129,6 +138,7 @@ public: Path(SimplePath _); Path clone() const; + Compare compare_with_paceholders(const Span& sp, const Path& x, t_cb_resolve_type resolve_placeholder) const; friend ::std::ostream& operator<<(::std::ostream& os, const Path& x); }; |