generateOuterEnums method

OuterEnumMetadata generateOuterEnums(
  1. List<PortableType> types
)

Implementation

OuterEnumMetadata generateOuterEnums(List<PortableType> types) {
  var callType = 0;
  var eventType = 0;
  var errorType = 0;

  for (final type in types) {
    if (type.type.path.contains('RuntimeCall')) {
      callType = type.id;
    }
    if (type.type.path.contains('RuntimeEvent')) {
      eventType = type.id;
    }
    if (type.type.path.contains('RuntimeError')) {
      errorType = type.id;
    }

    // TODO: It is possible that RuntimeError doesn't exists in the metadata
    // In that case, we should create a new type RuntimeError and add it
    // See: https://github.com/paritytech/subxt/blob/2d9de19040c862e1a7c97d572839983e43f336ea/metadata/src/from_into/v14.rs#L354-L389
  }

  return OuterEnumMetadata(
    callType: callType,
    eventType: eventType,
    errorType: errorType,
  );
}