[gcc r14-7427] gccrs: ast: Add TokenStream collect function
Arthur Cohen
cohenarthur@gcc.gnu.org
Tue Jan 16 17:33:49 GMT 2024
https://gcc.gnu.org/g:9761160120e96c4507e29f626f3333e0a97ab9f8
commit r14-7427-g9761160120e96c4507e29f626f3333e0a97ab9f8
Author: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Date: Fri Mar 24 12:39:48 2023 +0100
gccrs: ast: Add TokenStream collect function
Add a function to TokenStream to collect in a single vector all tokens.
gcc/rust/ChangeLog:
* ast/rust-ast-tokenstream.cc (TokenStream::collect_tokens): Add
getter.
(TokenStream::go): Rename function.
(TokenStream::visit): Likewise.
* ast/rust-ast-tokenstream.h: Add collect prototype.
Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diff:
---
gcc/rust/ast/rust-ast-tokenstream.cc | 11 +++++++++--
gcc/rust/ast/rust-ast-tokenstream.h | 6 ++++--
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/gcc/rust/ast/rust-ast-tokenstream.cc b/gcc/rust/ast/rust-ast-tokenstream.cc
index bbc01a274ee..95ded2481ae 100644
--- a/gcc/rust/ast/rust-ast-tokenstream.cc
+++ b/gcc/rust/ast/rust-ast-tokenstream.cc
@@ -19,14 +19,21 @@
namespace Rust {
namespace AST {
+
+std::vector<TokenPtr>
+TokenStream::collect_tokens () const
+{
+ return tokens;
+}
+
void
-TokenStream::go (AST::Crate &crate)
+TokenStream::visit (AST::Crate &crate)
{
visit_items_as_lines (crate.items);
}
void
-TokenStream::go (AST::Item &item)
+TokenStream::visit (AST::Item &item)
{
item.accept_vis (*this);
}
diff --git a/gcc/rust/ast/rust-ast-tokenstream.h b/gcc/rust/ast/rust-ast-tokenstream.h
index 29be91eb1d9..e5803350bba 100644
--- a/gcc/rust/ast/rust-ast-tokenstream.h
+++ b/gcc/rust/ast/rust-ast-tokenstream.h
@@ -33,8 +33,10 @@ public:
TokenStream (std::vector<TokenPtr> &container);
bool output_trailing_commas = false;
- void go (AST::Crate &crate);
- void go (AST::Item &item);
+ void visit (AST::Crate &crate);
+ void visit (AST::Item &item);
+
+ std::vector<TokenPtr> collect_tokens () const;
private:
std::vector<TokenPtr> &tokens;
More information about the Gcc-cvs
mailing list