summaryrefslogtreecommitdiff
path: root/src/ast/ast.hpp
diff options
context:
space:
mode:
authorJohn Hodge (sonata) <tpg@mutabah.net>2015-01-23 14:18:25 +0800
committerJohn Hodge (sonata) <tpg@mutabah.net>2015-01-23 14:18:25 +0800
commit175b02f7934d574778c87028edc9a6ebb97d690c (patch)
treeb0a338ffdfa03016d3212e112192cfb396f7ea75 /src/ast/ast.hpp
parent450d55d26e0265858f60f5a118aac72cf392495f (diff)
downloadmrust-175b02f7934d574778c87028edc9a6ebb97d690c.tar.gz
Autoderef on method lookup, further provements to method lookup
Diffstat (limited to 'src/ast/ast.hpp')
-rw-r--r--src/ast/ast.hpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ast/ast.hpp b/src/ast/ast.hpp
index 94ffbb79..40a44b78 100644
--- a/src/ast/ast.hpp
+++ b/src/ast/ast.hpp
@@ -483,6 +483,7 @@ public:
class Crate:
public Serialisable
{
+ ::std::vector<Impl*> m_impl_index;
public:
Module m_root_module;
::std::map< ::std::string, ExternCrate> m_extern_crates;
@@ -499,7 +500,7 @@ public:
::std::map< ::std::string, ExternCrate>& extern_crates() { return m_extern_crates; }
const ::std::map< ::std::string, ExternCrate>& extern_crates() const { return m_extern_crates; }
- Impl& find_impl(const TypeRef& trait, const TypeRef& type);
+ ::rust::option<Impl&> find_impl(const TypeRef& trait, const TypeRef& type);
Function& lookup_method(const TypeRef& type, const char *name);
void load_extern_crate(::std::string name);