From: Philip Herron Date: Thu, 12 Jan 2023 16:40:30 +0000 (+0000) Subject: gccrs: Move TypePredicateItem impl out of the header X-Git-Tag: basepoints/gcc-14~147 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c1b1bbbc64524b508c0150c66163b27be508dbcf;p=thirdparty%2Fgcc.git gccrs: Move TypePredicateItem impl out of the header This moves the implementation code out of the header and into its respective cc file. Signed-off-by: Philip Herron gcc/rust/ChangeLog: * typecheck/rust-tyty-bounds.cc (TypeBoundPredicateItem::error): refactor (TypeBoundPredicateItem::is_error): likewise (TypeBoundPredicateItem::get_parent): likewise * typecheck/rust-tyty.h: Move the implementation for the above --- diff --git a/gcc/rust/typecheck/rust-tyty-bounds.cc b/gcc/rust/typecheck/rust-tyty-bounds.cc index 30f7b0d02e3a..e7eb9a760f5d 100644 --- a/gcc/rust/typecheck/rust-tyty-bounds.cc +++ b/gcc/rust/typecheck/rust-tyty-bounds.cc @@ -364,6 +364,30 @@ TypeBoundPredicate::lookup_associated_item (const std::string &search) const return TypeBoundPredicateItem (this, trait_item_ref); } +TypeBoundPredicateItem::TypeBoundPredicateItem ( + const TypeBoundPredicate *parent, + const Resolver::TraitItemReference *trait_item_ref) + : parent (parent), trait_item_ref (trait_item_ref) +{} + +TypeBoundPredicateItem +TypeBoundPredicateItem::error () +{ + return TypeBoundPredicateItem (nullptr, nullptr); +} + +bool +TypeBoundPredicateItem::is_error () const +{ + return parent == nullptr || trait_item_ref == nullptr; +} + +const TypeBoundPredicate * +TypeBoundPredicateItem::get_parent () const +{ + return parent; +} + TypeBoundPredicateItem TypeBoundPredicate::lookup_associated_item ( const Resolver::TraitItemReference *ref) const diff --git a/gcc/rust/typecheck/rust-tyty.h b/gcc/rust/typecheck/rust-tyty.h index 20a243fe9803..7d32ed594949 100644 --- a/gcc/rust/typecheck/rust-tyty.h +++ b/gcc/rust/typecheck/rust-tyty.h @@ -82,19 +82,11 @@ class TypeBoundPredicateItem { public: TypeBoundPredicateItem (const TypeBoundPredicate *parent, - const Resolver::TraitItemReference *trait_item_ref) - : parent (parent), trait_item_ref (trait_item_ref) - {} + const Resolver::TraitItemReference *trait_item_ref); - static TypeBoundPredicateItem error () - { - return TypeBoundPredicateItem (nullptr, nullptr); - } + static TypeBoundPredicateItem error (); - bool is_error () const - { - return parent == nullptr || trait_item_ref == nullptr; - } + bool is_error () const; BaseType *get_tyty_for_receiver (const TyTy::BaseType *receiver); @@ -102,7 +94,7 @@ public: bool needs_implementation () const; - const TypeBoundPredicate *get_parent () const { return parent; } + const TypeBoundPredicate *get_parent () const; Location get_locus () const;