ContentType.parse constructor
ContentType.parse(
- String source
Create a ContentType from String.
Implementation
factory ContentType.parse(String source) {
final scanner = StringScanner(source);
scanner.scan(whitespace);
scanner.expect(token);
final type = scanner.lastMatch![0]!.toLowerCase();
scanner.expect('/');
scanner.expect(token);
final subType = scanner.lastMatch![0]!.toLowerCase();
scanner.scan(whitespace);
final parameters = <String, String?>{};
while (scanner.scan(';')) {
scanner.scan(whitespace);
scanner.expect(token);
final key = scanner.lastMatch![0]!.toLowerCase();
scanner.expect('=');
scanner.expect(token);
final value = scanner.lastMatch![0];
scanner.scan(whitespace);
parameters[key] = value;
}
scanner.expectDone();
final mediaType = MimeType(type, subType);
final charset = parameters['charset'];
return ContentType(mediaType, charset);
}