| 648 | |
| 649 | template <typename T> |
| 650 | inline bool RleBatchDecoder<T>::GetSingleValue(T* val) { |
| 651 | if (NextNumRepeats() > 0) { |
| 652 | DCHECK_EQ(0, NextNumLiterals()); |
| 653 | *val = GetRepeatedValue(1); |
| 654 | return true; |
| 655 | } |
| 656 | if (NextNumLiterals() > 0) { |
| 657 | DCHECK_EQ(0, NextNumRepeats()); |
| 658 | return GetLiteralValues(1, val); |
| 659 | } |
| 660 | return false; |
| 661 | } |
| 662 | |
| 663 | template <typename T> |
| 664 | inline void RleBatchDecoder<T>::NextCounts() { |
no outgoing calls