def formatValue(self, value):

        if Any.isTuple( value ) or Any.isList( value ) or \
             Any.isDict( value ):
            return self.formatIterable(value)

        else:
            return repr(value)
    def formatIterable(self, value):
        Any.requireMsg(
            Any.isList(value) or Any.isTuple(value) or Any.isDict(value),
            'unexpected datatype, value: %s' % str(value))

        # use pprint module for formatting, however we do some further rework
        # on its output to achieve desired result

        self._pprintOut.seek(0)
        self._pprintOut.truncate()
        self._pprinter.pprint(value)

        tmp = self._pprintOut.getvalue().strip()
        firstChar = tmp[0]
        lastChar = tmp[-1]
        centerPart = tmp[1:-1].strip()

        if not value:
            result = '%s%s' % (firstChar, lastChar)
        else:
            result = '%s %s %s' % (firstChar, centerPart, lastChar)
            result = result.replace('\n', '\n' + self._indentationIter * ' ')

        return result