package org.apache.regexp;
import java.io.
Serializable;
public class
REProgram implements
Serializable {
static final int
OPT_HASBACKREFS = 1;
static final int
OPT_HASBOL = 2;
char[]
instruction;
int
lenInstruction;
char[]
prefix;
int
flags;
int
maxParens = -1;
public
REProgram(char[]
paramArrayOfchar) {
this(
paramArrayOfchar,
paramArrayOfchar.length);
}
public
REProgram(int
paramInt, char[]
paramArrayOfchar) {
this(
paramArrayOfchar,
paramArrayOfchar.length);
this.
maxParens =
paramInt;
}
public
REProgram(char[]
paramArrayOfchar, int
paramInt) {
setInstructions(
paramArrayOfchar,
paramInt);
}
public char[]
getInstructions() {
if (this.
lenInstruction != 0) {
char[]
arrayOfChar = new char[this.
lenInstruction];
System.
arraycopy(this.
instruction, 0,
arrayOfChar, 0, this.
lenInstruction);
return
arrayOfChar;
}
return null;
}
public void
setInstructions(char[]
paramArrayOfchar, int
paramInt) {
this.
instruction =
paramArrayOfchar;
this.
lenInstruction =
paramInt;
this.
flags = 0;
this.
prefix = null;
if (
paramArrayOfchar != null &&
paramInt != 0) {
if (
paramInt >= 3 &&
paramArrayOfchar[0] == '|') {
char
c =
paramArrayOfchar[2];
if (
paramArrayOfchar[
c + 0] == 'E' &&
paramInt >= 6) {
char
c1 =
paramArrayOfchar[3];
if (
c1 == 'A') {
char
c2 =
paramArrayOfchar[4];
this.
prefix = new char[
c2];
System.
arraycopy(
paramArrayOfchar, 6, this.
prefix, 0,
c2);
} else if (
c1 == '^') {
this.
flags |= 0x2;
}
}
}
for (int
i = 0;
i <
paramInt;
i += 3) {
switch (
paramArrayOfchar[
i + 0]) {
case '[':
i +=
paramArrayOfchar[
i + 1] * 2;
break;
case 'A':
i +=
paramArrayOfchar[
i + 1];
break;
case '#':
this.
flags |= 0x1;
break;
}
}
}
}
}
/* Location: /Users/tommy/.m2/repository/jakarta-regexp/jakarta-regexp/1.4/jakarta-regexp-1.4.jar!/org/apache/regexp/REProgram.class
* Java compiler version: 1 (45.3)
* JD-Core Version: 1.1.3
*/