We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 4df0e52 + 2aae990 commit 45466f4Copy full SHA for 45466f4
core/src/main/scala/sttp/model/UriInterpolator.scala
@@ -731,6 +731,16 @@ object UriInterpolator {
731
case Singleton(ExpressionToken(s: Array[_])) =>
732
b ++= s.flatMap(anyToStringOpt)
733
doToSeq(tailTs)
734
+ case valueTs if(valueTs.size == 1) =>
735
+ // This case is equivalent to the next one but optimizes for the
736
+ // frequent scenario where the sequence contains a single element.
737
+ valueTs.get(0) match {
738
+ case StringToken(s) => b += decode(s, decodePlusAsSpace)
739
+ case ExpressionToken(e) => anyToStringOpt(e).foreach(b += _)
740
+ case EqInQuery => b += "="
741
+ case _ =>
742
+ }
743
+ doToSeq(tailTs)
744
case valueTs =>
745
val mbStr = valueTs mkStringOpt {
746
case StringToken(s) => Some(decode(s, decodePlusAsSpace))
0 commit comments