Creates a new object AttributeHeader from a binary stream. The binary
        stream can be represented by a byte string, bytearray or a memoryview of the
        bytearray.

        Args:
            binary_view (memoryview of bytearray) - A binary stream with the
                information of the attribute

        Returns:
            AttributeHeader: New object using hte binary stream as source

def create_from_binary(cls, binary_view):
        '''Creates a new object AttributeHeader from a binary stream. The binary
        stream can be represented by a byte string, bytearray or a memoryview of the
        bytearray.

        Args:
            binary_view (memoryview of bytearray) - A binary stream with the
                information of the attribute

        Returns:
            AttributeHeader: New object using hte binary stream as source
        '''
        attr_type, attr_len, non_resident, name_len, name_offset, flags, attr_id, \
        content_len, content_offset, indexed_flag = cls._REPR.unpack(binary_view[:cls._REPR.size])

        if name_len:
            name = binary_view[name_offset:name_offset+(2*name_len)].tobytes().decode("utf_16_le")
        else:
            name = None

        nw_obj = cls((AttrTypes(attr_type), attr_len, bool(non_resident), AttrFlags(flags), attr_id, name),
                        (content_len, content_offset, indexed_flag))

        return nw_obj