compose method

DC compose()
override

Implementation

DC compose() {

    var name = super.compose();

    var bl = new BinaryList()
            ..addUint8(name.length)
            ..addDC(name)
            ..addDC(returnType.compose())
            ..addUint8(arguments.length);

    for (var i = 0; i < arguments.length; i++)
        bl.addDC(arguments[i].compose());


    if (expansion != null)
    {
        var exp = DC.stringToBytes(expansion as String);
        bl..addInt32(exp.length)
          ..addDC(exp);
        bl.insertUint8(0, 0x10);
    }
    else
        bl.insertUint8(0, 0x0);

    return bl.toDC();
}