arguments property

List<TypeReflection> arguments

Returns the arguments of this type. Example: Map<String, int> will return [String, int].

Implementation

List<TypeReflection> get arguments {
  var argumentsTypeReflection = _argumentsTypeReflection;
  if (argumentsTypeReflection != null) {
    return UnmodifiableListView<TypeReflection>(argumentsTypeReflection);
  }

  var argumentsTypeInfo = _argumentsTypeInfo;
  if (argumentsTypeInfo != null) {
    var args = argumentsTypeInfo
        .map((e) => e.asTypeReflection)
        .toList(growable: false);
    return UnmodifiableListView<TypeReflection>(args);
  }

  var argumentsUnresolved = _argumentsUnresolved;
  if (argumentsUnresolved != null) {
    var args = argumentsUnresolved
        .map((e) => TypeReflection.from(e))
        .toList(growable: false);
    return UnmodifiableListView<TypeReflection>(args);
  }

  return UnmodifiableListView(<TypeReflection>[]);
}