EvaluationSequence<TScalar>
 ExpressionCompiler<TScalar>::compileJacobian(
     const ExpressionImplementationPtr& expressionPtr
 ) {
     ExpressionCompiler<TScalar> compiler;
     MatrixID<const TScalar> parameterID(-1);
     MatrixID<TScalar> resultID(0);
     compiler.evaluateJacobian(expressionPtr, parameterID, resultID);
     return compiler.evaluationSequence();
 }
// -----------------------------------------------------------------------------
// CWPParameter::InternalizeL
// -----------------------------------------------------------------------------
//
EXPORT_C void CWPParameter::InternalizeL(RReadStream& aStream)
    {
    TInt parameterID( aStream.ReadInt32L() );
    TUint length( aStream.ReadInt32L() );
    // Lengths packed into one 32-bit word for compatibility
    TInt valueLength( length & KWordMask );
    TInt nameLength( (length >> KBitsPerWord) & KWordMask );
    
    HBufC* value = HBufC::NewL( aStream, valueLength );
    delete iValue;
    iValue = value;
    
    if( nameLength > 0 )
        {
        HBufC* name = HBufC::NewL( aStream, nameLength );
        delete iName;
        iName = name;
        }

    iParameterID = parameterID;
    }