addEncodingParameter method
Implementation
String addEncodingParameter(String suggestedKey, Object? value,
{String parameterPrefix = 'param_'}) {
var encodingParameters = (this.encodingParameters ??= <String, Object?>{});
var namedParameters = this.namedParameters;
if (namedParameters == null || !namedParameters.containsKey(suggestedKey)) {
encodingParameters[suggestedKey] = value;
return suggestedKey;
}
for (var i = 0; i < 1000; ++i) {
var k = i == 0
? '$parameterPrefix$suggestedKey'
: '$parameterPrefix$suggestedKey$i';
if (!namedParameters.containsKey(k)) {
encodingParameters[k] = value;
return k;
}
}
throw StateError("Can't create encoding parameter: $suggestedKey = $value");
}