示例#1
0
    def pad(self, rows):
        '''
        Pad a series of column values for aligned display.
        '''
        widths = []
        for i in range(len(rows[0])):
            widths.append(max([len(r[i]) for r in rows]))

        retn = []
        for row in rows:
            retn.append([r.rjust(size) for r, size in s_common.iterzip(row, widths)])

        return retn
示例#2
0
文件: types.py 项目: TrentNow/synapse
    def _norm_list(self, valu, oldval=None):

        opts = {}
        subs = {}
        retn = []

        vlen = len(valu)

        if vlen < self.fsize:
            self._raiseBadValu(valu,
                               mesg='Expected %d fields and got %d' %
                               (self.fsize, len(valu)))

        for k, v in valu[self.fsize:]:
            opts[k] = v

        vals = valu[:self.fsize]
        for v, (name, tname) in s_common.iterzip(vals, self.fields):

            # FIXME - this if/else is a artifact of typelib/datamodel separation
            if self.prop:
                if self.tlib.isTufoProp(tname):
                    norm, ssubs = self._getPropNorm(tname, v)
                else:
                    norm, ssubs = self.tlib.getTypeNorm(tname, v)
            else:
                norm, ssubs = self.tlib.getTypeNorm(tname, v)

            subs[name] = norm
            for subkey, subval in ssubs.items():
                subs[name + ':' + subkey] = subval
            retn.append(norm)

        for name, tname in self.optfields:

            v = opts.get(name)
            if v is None:
                continue

            norm, ssubs = self.tlib.getTypeNorm(tname, v)

            subs[name] = norm
            for subkey, subval in ssubs.items():
                subs[name + ':' + subkey] = subval

            retn.append((name, norm))

        return s_common.guid(retn), subs
示例#3
0
文件: types.py 项目: e2-ibm/synapse
    def _norm_fields(self, valu):

        fields = self._get_fields()

        if len(valu) != len(fields):
            self._raiseBadValu(valu, mesg='field count != %d' % (len(fields),))

        vals = []
        subs = {}

        for valu, (name, item) in s_common.iterzip(valu, fields):

            norm, fubs = item.norm(valu)

            vals.append(norm)

            subs[name] = norm
            for fubk, fubv in fubs.items():
                subs[name + ':' + fubk] = fubv

        return vals, subs
示例#4
0
文件: types.py 项目: e2-ibm/synapse
 def _zipvals(self, vals):
     return s_common.iterzip(vals, self._get_fields())