I think it depends on what the model is for converting between a HBbase value and a tuple value. That code is doing this:

Convert an sequence of bytes from HBase encoded as _charset_ and convert them to a UTF-8 encoded rstring in the tuple.

It would be different if the model was to have the rstring represent the HBase value as-is.

What is the actual required functionality? Basically, the data model needs to be well defined, and then the code needs to implement it.