encode method Null safety

void encode(
  1. XdrDataOutputStream stream,
  2. XdrSCSpecTypeDef encoded
)

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;
  }
}