diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2023-03-24 12:39:48 +0100 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2023-03-30 16:48:27 +0200 |
commit | 1bc503fe37d24aab6cab0df0a427cb1793c084e8 (patch) | |
tree | 5802202a5a86949d862285279cb7b7b9d40c59ed /gcc | |
parent | ea248799f7864094946c90ae793efb55d03ffc64 (diff) | |
download | gcc-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.cc | 11 | ||||
-rw-r--r-- | 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 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; |