aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2023-03-24 12:39:48 +0100
committerArthur Cohen <arthur.cohen@embecosm.com>2023-03-30 16:48:27 +0200
commit1bc503fe37d24aab6cab0df0a427cb1793c084e8 (patch)
tree5802202a5a86949d862285279cb7b7b9d40c59ed /gcc
parentea248799f7864094946c90ae793efb55d03ffc64 (diff)
downloadgcc-1bc503fe37d24aab6cab0df0a427cb1793c084e8.zip
gcc-1bc503fe37d24aab6cab0df0a427cb1793c084e8.tar.gz
gcc-1bc503fe37d24aab6cab0df0a427cb1793c084e8.tar.bz2
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>
Diffstat (limited to 'gcc')
-rw-r--r--gcc/rust/ast/rust-ast-tokenstream.cc11
-rw-r--r--gcc/rust/ast/rust-ast-tokenstream.h6
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 bbc01a2..95ded24 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 29be91e..e580335 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;