I think you have the general idea down. But as you suspected it's not a truth table. It's all cross-product permutations (hence the name `product`) of six items from the set {True, False}. So that line is creating a iterator that looks like this:
(True, True, True, True, True, True)
(True, True, True, True, True, False)
(True, True, True, True, False, True)
(True, True, True, True, False, False)
(True, True, True, False, True, True)
Though not necessarily in this order... I'm unfamiliar with the actual implementation. Since the values are bits, they could have achieved the same effect by incrementing a six-bit integer. Which is a nice proof that the number of permutations here is 2^6. (Generally it's s^n, where s is the set size and n is the count of elements.)