Implementation
static void encode(XdrDataOutputStream stream, XdrSCSpecTypeDef encoded) {
stream.writeInt(encoded.discriminant.value);
switch (encoded.discriminant) {
case XdrSCSpecType.SC_SPEC_TYPE_VAL:
case XdrSCSpecType.SC_SPEC_TYPE_BOOL:
case XdrSCSpecType.SC_SPEC_TYPE_VOID:
case XdrSCSpecType.SC_SPEC_TYPE_STATUS:
case XdrSCSpecType.SC_SPEC_TYPE_U32:
case XdrSCSpecType.SC_SPEC_TYPE_I32:
case XdrSCSpecType.SC_SPEC_TYPE_U64:
case XdrSCSpecType.SC_SPEC_TYPE_I64:
case XdrSCSpecType.SC_SPEC_TYPE_TIMEPOINT:
case XdrSCSpecType.SC_SPEC_TYPE_DURATION:
case XdrSCSpecType.SC_SPEC_TYPE_U128:
case XdrSCSpecType.SC_SPEC_TYPE_I128:
case XdrSCSpecType.SC_SPEC_TYPE_U256:
case XdrSCSpecType.SC_SPEC_TYPE_I256:
case XdrSCSpecType.SC_SPEC_TYPE_BYTES:
case XdrSCSpecType.SC_SPEC_TYPE_STRING:
case XdrSCSpecType.SC_SPEC_TYPE_SYMBOL:
case XdrSCSpecType.SC_SPEC_TYPE_ADDRESS:
break;
case XdrSCSpecType.SC_SPEC_TYPE_OPTION:
XdrSCSpecTypeOption.encode(stream, encoded.option!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_RESULT:
XdrSCSpecTypeResult.encode(stream, encoded.result!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_VEC:
XdrSCSpecTypeVec.encode(stream, encoded.vec!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_MAP:
XdrSCSpecTypeMap.encode(stream, encoded.map!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_SET:
XdrSCSpecTypeSet.encode(stream, encoded.set!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_TUPLE:
XdrSCSpecTypeTuple.encode(stream, encoded.tuple!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_BYTES_N:
XdrSCSpecTypeBytesN.encode(stream, encoded.bytesN!);
break;
case XdrSCSpecType.SC_SPEC_TYPE_UDT:
XdrSCSpecTypeUDT.encode(stream, encoded.udt!);
break;
}
}