diff options
author | Mathias <mathias@spray.io> | 2014-09-19 15:13:01 +0200 |
---|---|---|
committer | Mathias <mathias@spray.io> | 2014-09-19 15:13:01 +0200 |
commit | 37af0d4ca639ccea44efcb22d10a1e07abc4c04b (patch) | |
tree | 34e983e7d3b70e7c095a71d8645f612862a8c038 /src/main/scala/spray/json/JsValue.scala | |
parent | c4a92c096ee223e680ea1bba80c4633ed9f64344 (diff) | |
download | spray-json-37af0d4ca639ccea44efcb22d10a1e07abc4c04b.tar.gz spray-json-37af0d4ca639ccea44efcb22d10a1e07abc4c04b.tar.bz2 spray-json-37af0d4ca639ccea44efcb22d10a1e07abc4c04b.zip |
Switch JsArray(List) to JsArray(Vector), make parser produce JsObject(HashMap) rather than JsObject(ListMap)
Diffstat (limited to 'src/main/scala/spray/json/JsValue.scala')
-rw-r--r-- | src/main/scala/spray/json/JsValue.scala | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/main/scala/spray/json/JsValue.scala b/src/main/scala/spray/json/JsValue.scala index 7dfb06f..bc2889d 100644 --- a/src/main/scala/spray/json/JsValue.scala +++ b/src/main/scala/spray/json/JsValue.scala @@ -18,7 +18,7 @@ package spray.json -import collection.immutable.ListMap +import collection.immutable /** * The general type of a JSON AST node. @@ -49,20 +49,18 @@ sealed abstract class JsValue { */ case class JsObject(fields: Map[String, JsValue]) extends JsValue { override def asJsObject(errorMsg: String) = this - def getFields(fieldNames: String*): Seq[JsValue] = fieldNames.flatMap(fields.get) + def getFields(fieldNames: String*): immutable.Seq[JsValue] = fieldNames.flatMap(fields.get)(collection.breakOut) } object JsObject { - // we use a ListMap in order to preserve the field order - def apply(members: JsField*) = new JsObject(ListMap(members: _*)) - def apply(members: List[JsField]) = new JsObject(ListMap(members: _*)) + def apply(members: JsField*) = new JsObject(Map(members: _*)) } /** * A JSON array. */ -case class JsArray(elements: List[JsValue]) extends JsValue +case class JsArray(elements: Vector[JsValue]) extends JsValue object JsArray { - def apply(elements: JsValue*) = new JsArray(elements.toList) + def apply(elements: JsValue*) = new JsArray(elements.toVector) } /** |