提交 fb053b63 编写于 作者: B Behdad Esfahbod

[iter] Rename random_access() to constexpr is_random_access()

上级 2790aad2
...@@ -83,7 +83,7 @@ struct hb_iter_t ...@@ -83,7 +83,7 @@ struct hb_iter_t
void forward (unsigned n) { thiz()->__forward__ (n); } void forward (unsigned n) { thiz()->__forward__ (n); }
void prev () { thiz()->__prev__ (); } void prev () { thiz()->__prev__ (); }
void rewind (unsigned n) { thiz()->__rewind__ (n); } void rewind (unsigned n) { thiz()->__rewind__ (n); }
bool random_access () const { return thiz()->__random_access__ (); } constexpr bool is_random_access () const { return thiz()->__random_access__ (); }
protected: protected:
hb_iter_t () {} hb_iter_t () {}
...@@ -130,7 +130,7 @@ struct hb_iter_mixin_t ...@@ -130,7 +130,7 @@ struct hb_iter_mixin_t
void __rewind__ (unsigned n) { while (n--) thiz()->prev (); } void __rewind__ (unsigned n) { while (n--) thiz()->prev (); }
/* Random access: Return true if item_at(), len(), forward() are fast. */ /* Random access: Return true if item_at(), len(), forward() are fast. */
bool __random_access__ () const { return false; } constexpr bool __random_access__ () const { return false; }
protected: protected:
hb_iter_mixin_t () {} hb_iter_mixin_t () {}
......
...@@ -73,6 +73,8 @@ test_iterator (Iterator it) ...@@ -73,6 +73,8 @@ test_iterator (Iterator it)
it = it + 10; it = it + 10;
assert (*it == it[0]); assert (*it == it[0]);
if (it.is_random_access ()) {}
} }
template <typename Iterable> static void template <typename Iterable> static void
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册