needed for applet search
[jalview.git] / src / com / stevesoft / pat / wrap / CharArrayWrap.java
diff --git a/src/com/stevesoft/pat/wrap/CharArrayWrap.java b/src/com/stevesoft/pat/wrap/CharArrayWrap.java
new file mode 100755 (executable)
index 0000000..e490cc9
--- /dev/null
@@ -0,0 +1,39 @@
+//\r
+// This software is now distributed according to\r
+// the Lesser Gnu Public License.  Please see\r
+// http://www.gnu.org/copyleft/lesser.txt for\r
+// the details.\r
+//    -- Happy Computing!\r
+//\r
+package com.stevesoft.pat.wrap;\r
+\r
+import com.stevesoft.pat.*;\r
+\r
+/** This provides a wrapper for a char array so that\r
+    it can be searched by Regex. */\r
+public class CharArrayWrap implements StringLike {\r
+    char[] ca;\r
+    public char[] getCharArray() { return ca; }\r
+    public CharArrayWrap(char[] ca) { this.ca = ca; }\r
+    public String toString() {\r
+      return new String(ca);\r
+    }\r
+    public char charAt(int i) { return ca[i]; }\r
+    public int length() { return ca.length; }\r
+    public String substring(int i1,int i2) {\r
+        StringBuffer sb = new StringBuffer();\r
+        for(int i=i1;i<i2;i++)\r
+            sb.append(ca[i]);\r
+        return sb.toString();\r
+    }\r
+    public Object unwrap() { return ca; }\r
+    public BasicStringBufferLike newStringBufferLike() {\r
+      return new CharArrayBufferWrap();\r
+    }\r
+    public int indexOf(char c) {\r
+      for(int i=0;i<ca.length;i++)\r
+        if(ca[i] == c)\r
+          return i;\r
+      return -1;\r
+    }\r
+}\r