summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBurak Emir <emir@epfl.ch>2007-03-02 23:56:59 +0000
committerBurak Emir <emir@epfl.ch>2007-03-02 23:56:59 +0000
commite46e66a0196d0ee950b08d5946fcee44cfddeef3 (patch)
tree1ada5ec9a5a50955b3bd1e25eec4365c7be30b8b
parentdf922513e522aa4e21a8b3b01db32afe795d944a (diff)
downloadscala-e46e66a0196d0ee950b08d5946fcee44cfddeef3.tar.gz
scala-e46e66a0196d0ee950b08d5946fcee44cfddeef3.tar.bz2
scala-e46e66a0196d0ee950b08d5946fcee44cfddeef3.zip
HasKeyValue for matching on attribute presence ...
HasKeyValue for matching on attribute presence and getting a value
-rw-r--r--src/library/scala/xml/HasKeyValue.scala13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/library/scala/xml/HasKeyValue.scala b/src/library/scala/xml/HasKeyValue.scala
new file mode 100644
index 0000000000..f7dae950f1
--- /dev/null
+++ b/src/library/scala/xml/HasKeyValue.scala
@@ -0,0 +1,13 @@
+package scala.xml
+
+/** use this class to match on (unprefixed) attribute values
+ * <p>
+ val hasName = new HasKeyValue("name")
+ node match {
+ case Node("foo", hasName(x), _*) => x // foo had attribute with key "name" and with value x
+ }
+ */
+class HasKeyValue(key: String) {
+ def unapplySeq(x:MetaData): Option[Seq[Node]] = x.get(key)
+}
+