merged
authorhuffman
Thu, 18 Jun 2009 07:51:15 -0700
changeset 31710 99f08ce977f9
parent 31703 4e6064759aeb (diff)
parent 31709 061f01ee9978 (current diff)
child 31711 78d06ce5d359
merged
--- a/src/Pure/General/scan.scala	Thu Jun 18 07:46:30 2009 -0700
+++ b/src/Pure/General/scan.scala	Thu Jun 18 07:51:15 2009 -0700
@@ -136,5 +136,31 @@
     }.named("keyword")
 
   }
+
+
+  /** reverse CharSequence **/
+
+  class Reverse(text: CharSequence, start: Int, end: Int) extends CharSequence
+  {
+    require(0 <= start && start <= end && end <= text.length)
+
+    def this(text: CharSequence) = this(text, 0, text.length)
+
+    def length: Int = end - start
+    def charAt(i: Int): Char = text.charAt(end - i - 1)
+
+    def subSequence(i: Int, j: Int): CharSequence =
+      if (0 <= i && i <= j && j <= length) new Reverse(text, end - j, end - i)
+      else throw new IndexOutOfBoundsException
+
+    override def toString: String =
+    {
+      val buf = new StringBuffer(length)
+      for (i <- 0 until length)
+        buf.append(charAt(i))
+      buf.toString
+    }
+  }
+
 }
 
--- a/src/Pure/IsaMakefile	Thu Jun 18 07:46:30 2009 -0700
+++ b/src/Pure/IsaMakefile	Thu Jun 18 07:51:15 2009 -0700
@@ -12,6 +12,8 @@
 
 ## global settings
 
+SHELL = /bin/bash
+
 SRC = $(ISABELLE_HOME)/src
 OUT = $(ISABELLE_OUTPUT)
 LOG = $(OUT)/log
@@ -134,7 +136,7 @@
 	scaladoc -d classes $(SCALA_FILES)
 	@cp $(SCALA_FILES) classes/isabelle
 	@mkdir -p `dirname $@`
-	@cd classes; jar cf $@ isabelle
+	@cd classes; jar cf `jvmpath $@` isabelle
 	@rm -rf classes
 
 clean-jar:
--- a/src/Pure/System/isabelle_system.scala	Thu Jun 18 07:46:30 2009 -0700
+++ b/src/Pure/System/isabelle_system.scala	Thu Jun 18 07:51:15 2009 -0700
@@ -114,6 +114,8 @@
     if (value != "") value else error("Undefined environment variable: " + name)
   }
 
+  override def toString = getenv("ISABELLE_HOME")
+
 
   /* file path specifications */