javacc-7.0.1.test.tmp.Obfuscator.MapFile Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of javacc Show documentation
Show all versions of javacc Show documentation
JavaCC is a parser/scanner generator for Java.
/* MapFile.java */
/* Generated By:JavaCC: Do not edit this line. MapFile.java */
import java.util.*;
public class MapFile implements MapFileConstants {
/*
* Following is the only production in this grammar. This describes the grammar
* of the mapsfile, which is simply a list of maps from actual identifiers to
* obfuscated identifiers. The actions here insert these mappings into the
* appropriate Hashtable's in Globals.java.
*/
final public
void input() throws ParseException {Token t1, t2;
label_1:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case IDENTIFIER:{
;
break;
}
default:
jj_la1[0] = jj_gen;
break label_1;
}
t1 = jj_consume_token(IDENTIFIER);
jj_consume_token(1);
t2 = jj_consume_token(IDENTIFIER);
jj_consume_token(2);
if (Globals.mappings.get(t1.image) != null) {
if (!t1.image.equals(t2.image)) {
System.out.println("Warning: Map specification of " + t1.image + " to " + t2.image + " overrides entry in .");
}
}
// truncate size just to be safe on machines like Macs
if (t2.image.length() > 24) {
t2.image = t2.image.substring(0,24);
}
Globals.mappings.put(t1.image, t2.image);
Globals.mapTargets.put(t2.image, "");
if (t2.image.length() > 2 && t2.image.substring(0,2).equals("O0")) {
int i = Integer.parseInt(t2.image.substring(2));
if (i > Globals.counter) {
Globals.counter = i;
}
}
}
jj_consume_token(0);
}
/** Generated Token Manager. */
public MapFileTokenManager token_source;
JavaCharStream jj_input_stream;
/** Current token. */
public Token token;
/** Next token. */
public Token jj_nt;
private int jj_ntk;
private int jj_gen;
final private int[] jj_la1 = new int[1];
static private int[] jj_la1_0;
static private int[] jj_la1_1;
static {
jj_la1_init_0();
jj_la1_init_1();
}
private static void jj_la1_init_0() {
jj_la1_0 = new int[] {0x0,};
}
private static void jj_la1_init_1() {
jj_la1_1 = new int[] {0x20000000,};
}
/** Constructor with InputStream. */
public MapFile(java.io.InputStream stream) {
this(stream, null);
}
/** Constructor with InputStream and supplied encoding */
public MapFile(java.io.InputStream stream, String encoding) {
try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source = new MapFileTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream) {
ReInit(stream, null);
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream, String encoding) {
try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
/** Constructor. */
public MapFile(java.io.Reader stream) {
jj_input_stream = new JavaCharStream(stream, 1, 1);
token_source = new MapFileTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
/** Reinitialise. */
public void ReInit(java.io.Reader stream) {
if (jj_input_stream == null) {
jj_input_stream = new JavaCharStream(stream, 1, 1);
} else {
jj_input_stream.ReInit(stream, 1, 1);
}
if (token_source == null) {
token_source = new MapFileTokenManager(jj_input_stream);
}
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
/** Constructor with generated Token Manager. */
public MapFile(MapFileTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
/** Reinitialise. */
public void ReInit(MapFileTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 1; i++) jj_la1[i] = -1;
}
private Token jj_consume_token(int kind) throws ParseException {
Token oldToken;
if ((oldToken = token).next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
if (token.kind == kind) {
jj_gen++;
return token;
}
token = oldToken;
jj_kind = kind;
throw generateParseException();
}
/** Get the next Token. */
final public Token getNextToken() {
if (token.next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
jj_gen++;
return token;
}
/** Get the specific Token. */
final public Token getToken(int index) {
Token t = token;
for (int i = 0; i < index; i++) {
if (t.next != null) t = t.next;
else t = t.next = token_source.getNextToken();
}
return t;
}
private int jj_ntk_f() {
if ((jj_nt=token.next) == null)
return (jj_ntk = (token.next=token_source.getNextToken()).kind);
else
return (jj_ntk = jj_nt.kind);
}
private java.util.List jj_expentries = new java.util.ArrayList();
private int[] jj_expentry;
private int jj_kind = -1;
/** Generate ParseException. */
public ParseException generateParseException() {
jj_expentries.clear();
boolean[] la1tokens = new boolean[64];
if (jj_kind >= 0) {
la1tokens[jj_kind] = true;
jj_kind = -1;
}
for (int i = 0; i < 1; i++) {
if (jj_la1[i] == jj_gen) {
for (int j = 0; j < 32; j++) {
if ((jj_la1_0[i] & (1<