operator bool()
authorNicholas Ormrod <njormrod@fb.com>
Wed, 29 Oct 2014 20:03:02 +0000 (13:03 -0700)
committerdcsommer <dcsommer@fb.com>
Wed, 29 Oct 2014 23:08:05 +0000 (16:08 -0700)
commit9a88e5b5681dfc13a5f392ebce9ff2576e476f99
tree915c85e4f85529a7a449352adeec0f7673ffa49c
parent538cd253ae2576c447c981113577209f4b4438b7
operator bool()

Summary:
Among all of the implicit conversions, conversion to bool is
particularly tricky. For this reason, it has a special call-out in flint
among the casts, and canno be overriden.

However, there are legitimate use cases for operator bool. In this case,
we have a iterator that logically represents a bool but in practice
represents a packed integral. This class needs to be implicitly
convertible to bool, and warrants an override.

Push blocking tests have had over a day to complete, but haven't.
Further, the folly change is comment-only.

Test Plan:
Build flint, run it on BitIteratorDetail.h, see no more lint
errors

Reviewed By: andrei.alexandrescu@fb.com

Subscribers: sdwilsh, louisk, njormrod, folly-diffs@

FB internal diff: D1644141

Tasks: 5486739

Signature: t1:1644141:1414607351:29740da758b75187f4f7b6b5a5ad28a523e7080d
folly/detail/BitIteratorDetail.h