From 1ceea7eb080a309fc2811db604bceed9e638bc5e Mon Sep 17 00:00:00 2001 From: Jean Christophe Beyler Date: Tue, 15 Apr 2014 16:18:48 -0700 Subject: ART: Initialization of RegLocation and API for GrowableArray Iterator Two things: - Added a default initialization for the RegLocation. - Added a default constructor and Reset for the GrowableArray's Iterator class. Change-Id: I74d9c584304c77add42e0d66e4037ac45b890142 Signed-off-by: Jean Christophe Beyler Signed-off-by: Razvan A Lupusoru Signed-off-by: Yixin Shou Signed-off-by: Chao-ying Fu Signed-off-by: Udayan Banerji --- compiler/utils/growable_array.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'compiler/utils/growable_array.h') 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_; -- cgit v1.2.3-59-g8ed1b