diff options
Diffstat (limited to 'compiler/utils/growable_array.h')
| -rw-r--r-- | compiler/utils/growable_array.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/compiler/utils/growable_array.h b/compiler/utils/growable_array.h index a7d1f0e5a5..e6c53dab24 100644 --- a/compiler/utils/growable_array.h +++ b/compiler/utils/growable_array.h @@ -50,9 +50,14 @@ class GrowableArray { : idx_(0), g_list_(g_list) {} + explicit Iterator() + : idx_(0), + g_list_(nullptr) {} + // NOTE: returns 0/NULL when no next. // TODO: redo to make usage consistent with other iterators. T Next() { + DCHECK(g_list_ != nullptr); if (idx_ >= g_list_->Size()) { return 0; } else { @@ -64,6 +69,15 @@ class GrowableArray { idx_ = 0; } + void Reset(GrowableArray* g_list) { + idx_ = 0; + g_list_ = g_list; + } + + size_t GetIndex() const { + return idx_; + } + private: size_t idx_; GrowableArray* const g_list_; |