anchor.diff:  %% -type pbvalue() :: binary() | integer() | boolean().
   -export_type([ldbvalue/0]).
   
  -
  --spec encode_field_type(atom()) -> atom().
  +-type tscolumntype() :: varchar | sint64 | timestamp | boolean | double.
  +
  +%% @doc Convert time series field type atoms returned from the DDL modules
  +%% into Protobuf compatible upper case atoms.
  +-spec encode_field_type(tscolumntype()) -> atom().
   encode_field_type(varchar) ->
       'VARCHAR';
   encode_field_type(sint64) ->
  
positive.code: encode_field_type(boolean) ->
      'BOOLEAN'.
  
  -spec encode_rows(list(atom()), list(list({binary(), ldbvalue()}))) -> [#tsrow{}].
  encode_rows(ColumnTypes, Rows) ->
      [encode_row(ColumnTypes, Row) || Row <- Rows].
  
  
  -spec decode_rows([#tsrow{}]) -> list(tuple()).
  decode_rows(Rows) ->
      [list_to_tuple(decode_cells(Cells)) || #tsrow{cells = Cells} <- Rows].
  
  
  -spec decode_cells([#tscell{}]) -> list(ldbvalue()).
  decode_cells(Cells) ->
      decode_cells(Cells, []).
  
negative.code: 
  -include("riak_ts_pb.hrl").
  
  -export([encode_rows/2,
           decode_rows/1,
           decode_cells/1,
           encode_field_type/1]).
  
  -compile(export_all).
  
  -type tsrow() :: #tsrow{}.
  -export_type([tsrow/0]).
  
  