diff options
author | John Hodge <tpg@ucc.asn.au> | 2019-06-09 20:31:41 +0800 |
---|---|---|
committer | John Hodge <tpg@ucc.asn.au> | 2019-06-09 20:31:41 +0800 |
commit | a9f501bde9d8ff5e714d0ef2663177b0949f95cc (patch) | |
tree | 47189972d96bb44e2111e707987aabf75f9e3872 /src/hir/serialise.cpp | |
parent | 8992eaa470e27ed3da396aed41ce741bc509bb0f (diff) | |
download | mrust-a9f501bde9d8ff5e714d0ef2663177b0949f95cc.tar.gz |
HIR - Sort trait impls too
Diffstat (limited to 'src/hir/serialise.cpp')
-rw-r--r-- | src/hir/serialise.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/hir/serialise.cpp b/src/hir/serialise.cpp index 83e6d016..7725d49f 100644 --- a/src/hir/serialise.cpp +++ b/src/hir/serialise.cpp @@ -308,17 +308,20 @@ serialise(pm.path); serialise_vec(pm.attributes); } + template<typename T> + void serialise(const ::HIR::Crate::ImplGroup<T>& ig) + { + serialise_pathmap(ig.named); + serialise_vec(ig.non_named); + serialise_vec(ig.generic); + } void serialise_crate(const ::HIR::Crate& crate) { m_out.write_string(crate.m_crate_name); serialise_module(crate.m_root_module); - //std::map<HIR::SimplePath,std::vector<TypeImpl>> - serialise_pathmap(crate.m_named_type_impls); - serialise_vec(crate.m_primitive_type_impls); - serialise_vec(crate.m_generic_type_impls); - + serialise(crate.m_type_impls); serialise_pathmap(crate.m_trait_impls); serialise_pathmap(crate.m_marker_impls); |