Question.5
A register builder class supports chained method calls:
class RegBuilder {
uint32_t val = 0;
public:
RegBuilder& set_bit(int n) {
val |= (1U << n);
return *this;
}
uint32_t build() { return val; }
};
uint32_t reg = RegBuilder()
.set_bit(0).set_bit(3).set_bit(7).build();Why does set_bit return RegBuilder&?