hwt/hdl/frameTmpl.py
def fieldToDataDict(dtype, data, res):
        """
        Construct dictionary {StructField:value} for faster lookup of values
        for fields
        """
        # assert data is None or isinstance(data, dict)
        for f in dtype.fields:
            try:
                fVal = data[f.name]
            except KeyError:
                fVal = None

            if isinstance(f.dtype, Bits):
                if fVal is not None:
                    assert isinstance(fVal, int)
                    res[f] = fVal
            elif isinstance(f.dtype, HStruct):
                if fVal:
                    FrameTmpl.fieldToDataDict(f.dtype, fVal, res)
            elif isinstance(f.dtype, HArray):
                if fVal:
                    # assert isinstance(fVal, class_or_tuple)
                    res[f] = fVal

        return res
def fieldToDataDict(dtype, data, res):
        """
        Construct dictionary {StructField:value} for faster lookup of values
        for fields
        """
        # assert data is None or isinstance(data, dict)
        for f in dtype.fields:
            try:
                fVal = data[f.name]
            except KeyError:
                fVal = None

            if isinstance(f.dtype, Bits):
                if fVal is not None:
                    assert isinstance(fVal, int)
                    res[f] = fVal
            elif isinstance(f.dtype, HStruct):
                if fVal:
                    FrameTmpl.fieldToDataDict(f.dtype, fVal, res)
            elif isinstance(f.dtype, HArray):
                if fVal:
                    # assert isinstance(fVal, class_or_tuple)
                    res[f] = fVal

        return res
def fieldToDataDict ( dtype , data , res ) : # assert data is None or isinstance(data, dict) for f in dtype . fields : try : fVal = data [ f . name ] except KeyError : fVal = None if isinstance ( f . dtype , Bits ) : if fVal is not None : assert isinstance ( fVal , int ) res [ f ] = fVal elif isinstance ( f . dtype , HStruct ) : if fVal : FrameTmpl . fieldToDataDict ( f . dtype , fVal , res ) elif isinstance ( f . dtype , HArray ) : if fVal : # assert isinstance(fVal, class_or_tuple) res [ f ] = fVal return res
Construct dictionary {StructField:value} for faster lookup of values
        for fields
Construct dictionary { StructField : value } for faster lookup of values for fields