List<String> getGenericArgs(String? type) { var parts = splitOnFirst(type, "<"); if (parts.length == 1) return []; var argsString = lastLeftPart(parts[1], ">")!; return splitGenericArgs(argsString); }