public LocalVariable buildDataEncoding(CodeAssembler assembler,
                                           StorableProperty<S>[] properties,
                                           LocalVariable instanceVar,
                                           Class<?> adapterInstanceClass,
                                           boolean useReadMethods,
                                           int generation)
        throws SupportException
    {
        properties = ensureDataProperties(properties);
        return buildEncoding(Mode.DATA, assembler,
                             properties, null,
                             instanceVar, adapterInstanceClass,
                             useReadMethods, generation, null, null);
    }
public LocalVariable buildDataEncoding ( CodeAssembler assembler , StorableProperty < S > [ ] properties , LocalVariable instanceVar , Class < ? > adapterInstanceClass , boolean useReadMethods , int generation ) throws SupportException { properties = ensureDataProperties ( properties ) ; return buildEncoding ( Mode . DATA , assembler , properties , null , instanceVar , adapterInstanceClass , useReadMethods , generation , null , null ) ; }
Generates bytecode instructions to encode properties. The encoding is
suitable for "data" encoding, which means it is not correctly
comparable, but it is more efficient than key encoding. Partial encoding
is not supported.

@param assembler code assembler to receive bytecode instructions
@param properties specific properties to encode, defaults to all non-key
properties if null
@param instanceVar local variable referencing Storable instance,
defaults to "this" if null. If variable type is an Object array, then
property values are read from the runtime value of this array instead
of a Storable instance.
@param adapterInstanceClass class containing static references to
adapter instances - defaults to instanceVar
@param useReadMethods when true, access properties by public read
methods instead of protected fields
@param generation when non-negative, write a storable layout generation
value in one or four bytes. Generation 0..127 is encoded in one byte, and
128..max is encoded in four bytes, with the most significant bit set.

@return local variable referencing a byte array with encoded data

@throws SupportException if any property type is not supported
@throws IllegalArgumentException if assembler is null, or if instanceVar
is not the correct instance type