--- /dev/null
+//\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;\r
+\r
+import java.io.*;\r
+import com.stevesoft.pat.wrap.*;\r
+\r
+/** This class is used internally by RegexReader to\r
+ store blocks of data. */\r
+class RBuffer {\r
+ boolean done = false;\r
+ StringBuffer sb;\r
+ int pos,epos;\r
+ RBuffer next;\r
+ RBuffer() {}\r
+ RBuffer(StringBuffer sb) { this.sb = sb; }\r
+ public String toString() {\r
+ return "sb="+sb.toString().replace('\n',' ')+\r
+ " pos="+pos+" epos="+epos+\r
+ " sb.length()="+sb.length()+\r
+ "\n"+sp(pos+3)+"^"+sp(epos-pos-1)+"^";\r
+ }\r
+ String sp(int n) {\r
+ if(n<=0)\r
+ return "";\r
+ StringBuffer sb = new StringBuffer(n);\r
+ for(int i=0;i<n;i++)\r
+ sb.append(' ');\r
+ return sb.toString();\r
+ }\r
+}\r