docs: def extract_name_value_type(self, name, value, limit_size=False):
          """Extracts value of any object, eventually reduces it's size and
          returns name, truncated value and type (for str with size appended)
          """
          MAX_STRING_LEN_TO_RETURN = 487
          try:
              t_value = repr(value)
          except:
              t_value = "Error while extracting value"
  
          # convert all var names to string
          if isinstance(name, str):
              r_name = name
          else:
              r_name = repr(name)
  
          # truncate value to limit data flow between ikpdb and client
          if len(t_value) > MAX_STRING_LEN_TO_RETURN:
              r_value = "%s ... (truncated by ikpdb)" % (t_value[:MAX_STRING_LEN_TO_RETURN],) 
              r_name = "%s*" % r_name  # add a visual marker to truncated var's name
          else:
              r_value = t_value
              
          if isinstance(value, str):
              r_type = "%s [%s]" % (IKPdbRepr(value), len(value),)
          else:
              r_type = IKPdbRepr(value)
              
          return r_name, r_value, r_type