diff options
author | Philip Herron <philip.herron@embecosm.com> | 2022-06-28 14:11:32 +0100 |
---|---|---|
committer | Philip Herron <philip.herron@embecosm.com> | 2022-06-28 14:11:32 +0100 |
commit | c14187cf54ba2676efc9e705bff8c15282718caf (patch) | |
tree | 80f8460e74f4f41f0762129c37523a7a59c8c925 /gcc | |
parent | 7f8479378a99d17de6847d4482f23e11944d35c5 (diff) | |
download | gcc-c14187cf54ba2676efc9e705bff8c15282718caf.zip gcc-c14187cf54ba2676efc9e705bff8c15282718caf.tar.gz gcc-c14187cf54ba2676efc9e705bff8c15282718caf.tar.bz2 |
Remove unused code in ResolveTypeToCanonicalPath class
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-type.cc | 117 | ||||
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-type.h | 50 |
2 files changed, 1 insertions, 166 deletions
diff --git a/gcc/rust/resolve/rust-ast-resolve-type.cc b/gcc/rust/resolve/rust-ast-resolve-type.cc index 275f241..0d15e17 100644 --- a/gcc/rust/resolve/rust-ast-resolve-type.cc +++ b/gcc/rust/resolve/rust-ast-resolve-type.cc @@ -45,66 +45,6 @@ ResolveTypeToCanonicalPath::canonicalize_generic_args (AST::GenericArgs &args) } void -ResolveTypeToCanonicalPath::visit (AST::TypePathSegmentGeneric &seg) -{ - if (seg.is_error ()) - { - failure_flag = true; - rust_error_at (seg.get_locus (), "segment has error: %s", - seg.as_string ().c_str ()); - return; - } - - if (!seg.has_generic_args ()) - { - auto ident_segment - = CanonicalPath::new_seg (seg.get_node_id (), - seg.get_ident_segment ().as_string ()); - result = result.append (ident_segment); - return; - } - - if (type_resolve_generic_args_flag) - { - ResolveType::type_resolve_generic_args (seg.get_generic_args ()); - } - - if (include_generic_args_flag) - { - std::string generics - = canonicalize_generic_args (seg.get_generic_args ()); - auto generic_segment - = CanonicalPath::new_seg (seg.get_node_id (), - seg.get_ident_segment ().as_string () - + "::" + generics); - result = result.append (generic_segment); - return; - } - - auto ident_segment - = CanonicalPath::new_seg (seg.get_node_id (), - seg.get_ident_segment ().as_string ()); - result = result.append (ident_segment); -} - -void -ResolveTypeToCanonicalPath::visit (AST::TypePathSegment &seg) -{ - if (seg.is_error ()) - { - failure_flag = true; - rust_error_at (seg.get_locus (), "segment has error: %s", - seg.as_string ().c_str ()); - return; - } - - CanonicalPath ident_seg - = CanonicalPath::new_seg (seg.get_node_id (), - seg.get_ident_segment ().as_string ()); - result = result.append (ident_seg); -} - -void ResolveType::visit (AST::ArrayType &type) { type.get_elem_type ()->accept_vis (*this); @@ -129,63 +69,6 @@ ResolveType::visit (AST::TraitObjectType &type) } void -ResolveTypeToCanonicalPath::visit (AST::ReferenceType &ref) -{ - auto inner_type - = ResolveTypeToCanonicalPath::resolve (*ref.get_type_referenced ().get (), - include_generic_args_flag, - type_resolve_generic_args_flag); - - std::string segment_string ("&"); - if (ref.get_has_mut ()) - segment_string += "mut "; - - segment_string += inner_type.get (); - - auto ident_seg = CanonicalPath::new_seg (ref.get_node_id (), segment_string); - result = result.append (ident_seg); -} - -void -ResolveTypeToCanonicalPath::visit (AST::RawPointerType &ref) -{ - auto inner_type - = ResolveTypeToCanonicalPath::resolve (*ref.get_type_pointed_to ().get (), - include_generic_args_flag, - type_resolve_generic_args_flag); - - std::string segment_string ("*"); - switch (ref.get_pointer_type ()) - { - case AST::RawPointerType::PointerType::MUT: - segment_string += "mut "; - break; - - case AST::RawPointerType::PointerType::CONST: - segment_string += "const "; - break; - } - - segment_string += inner_type.get (); - - auto ident_seg = CanonicalPath::new_seg (ref.get_node_id (), segment_string); - result = result.append (ident_seg); -} - -void -ResolveTypeToCanonicalPath::visit (AST::SliceType &slice) -{ - auto inner_type - = ResolveTypeToCanonicalPath::resolve (*slice.get_elem_type ().get (), - include_generic_args_flag, - type_resolve_generic_args_flag); - std::string segment_string = "[" + inner_type.get () + "]"; - auto ident_seg - = CanonicalPath::new_seg (slice.get_node_id (), segment_string); - result = result.append (ident_seg); -} - -void ResolveType::visit (AST::ReferenceType &type) { CanonicalPath path = CanonicalPath::create_empty (); diff --git a/gcc/rust/resolve/rust-ast-resolve-type.h b/gcc/rust/resolve/rust-ast-resolve-type.h index 8600830..733cfe7 100644 --- a/gcc/rust/resolve/rust-ast-resolve-type.h +++ b/gcc/rust/resolve/rust-ast-resolve-type.h @@ -25,58 +25,10 @@ namespace Rust { namespace Resolver { -class ResolveTypeToCanonicalPath : public ResolverBase +class ResolveTypeToCanonicalPath { -protected: - using Rust::Resolver::ResolverBase::visit; - public: - // FIXME this should really only take AST::TypeNoBounds& - static CanonicalPath resolve (AST::Type &type, - bool include_generic_args = true, - bool type_resolve_generic_args = true) - { - ResolveTypeToCanonicalPath resolver (include_generic_args, - type_resolve_generic_args); - type.accept_vis (resolver); - return resolver.result; - } - - void visit (AST::TypePath &path) override - { - for (auto &seg : path.get_segments ()) - { - seg->accept_vis (*this); - if (failure_flag) - return; - } - } - - void visit (AST::SliceType &slice) override; - - void visit (AST::RawPointerType &ptr) override; - - void visit (AST::ReferenceType &ref) override; - - void visit (AST::TypePathSegmentGeneric &seg) override; - - void visit (AST::TypePathSegment &seg) override; - static std::string canonicalize_generic_args (AST::GenericArgs &args); - -protected: - ResolveTypeToCanonicalPath (bool include_generic_args, - bool type_resolve_generic_args) - : ResolverBase (), result (CanonicalPath::create_empty ()), - include_generic_args_flag (include_generic_args), - type_resolve_generic_args_flag (type_resolve_generic_args), - failure_flag (false) - {} - - CanonicalPath result; - bool include_generic_args_flag; - bool type_resolve_generic_args_flag; - bool failure_flag; }; class ResolveRelativeTypePath |