diff options
author | Arthur Cohen <arthur.cohen@embecosm.com> | 2023-02-15 17:10:54 +0100 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2023-04-06 10:47:24 +0200 |
commit | fa7675df86ad2f22d0d349708da5cd363ed03f0f (patch) | |
tree | 5754b5afdad521494c2669c13cf5b83d417ff985 /gcc/rust/ast/rust-ast.h | |
parent | 3b342e11627f2050cb0ecfe52d79de2060795b50 (diff) | |
download | gcc-fa7675df86ad2f22d0d349708da5cd363ed03f0f.zip gcc-fa7675df86ad2f22d0d349708da5cd363ed03f0f.tar.gz gcc-fa7675df86ad2f22d0d349708da5cd363ed03f0f.tar.bz2 |
gccrs: ast: Refactor TraitItem to keep Location info
gcc/rust/ChangeLog:
* ast/rust-ast.h: Keep location in TraitItem base class
* ast/rust-item.h (class TraitItemFunc): Use base class location instead.
(class TraitItemMethod): Likewise.
(class TraitItemConst): Likewise.
(class TraitItemType): Likewise.
* ast/rust-macro.h: Likewise.
Diffstat (limited to 'gcc/rust/ast/rust-ast.h')
-rw-r--r-- | gcc/rust/ast/rust-ast.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/rust/ast/rust-ast.h b/gcc/rust/ast/rust-ast.h index d986fdf..585bdb0 100644 --- a/gcc/rust/ast/rust-ast.h +++ b/gcc/rust/ast/rust-ast.h @@ -1358,12 +1358,15 @@ protected: class TraitItem { protected: - TraitItem () : node_id (Analysis::Mappings::get ()->get_next_node_id ()) {} + TraitItem (Location locus) + : node_id (Analysis::Mappings::get ()->get_next_node_id ()), locus (locus) + {} // Clone function implementation as pure virtual method virtual TraitItem *clone_trait_item_impl () const = 0; NodeId node_id; + Location locus; public: virtual ~TraitItem () {} @@ -1382,6 +1385,7 @@ public: virtual bool is_marked_for_strip () const = 0; NodeId get_node_id () const { return node_id; } + Location get_locus () const { return locus; } }; /* Abstract base class for items used within an inherent impl block (the impl |