switch (state) { case SAW_NOTHING: if (ifOpCodes.get(seen)) { state = SAW_IF; startPC = getPC(); } break;  case SAW_IF: if ((seen == ICONST_0) || (seen == ICONST_1)) state = SAW_ICONST_PART1; else state = SAW_NOTHING; break;  case SAW_ICONST_PART1: if (seen == IRETURN) state = SAW_IRETURN_PART1; else state = SAW_NOTHING; break;  case SAW_IRETURN_PART1: if ((seen == ICONST_0) || (seen == ICONST_1)) state = SAW_ICONST_PART2; else state = SAW_NOTHING; break;  case SAW_ICONST_PART2: if (seen == IRETURN) bugReporter.reportBug( new BugInstance(this, "SBR_SIMPLIFY_BOOLEAN_RETURN", LOW_PRIORITY ) .addClassAndMethod(this) .addSourceLineRange(this, startPC, getPC())); else state = SAW_NOTHING; break;
if ((seen == TABLESWITCH) || (seen == LOOKUPSWITCH)) { switchHdlr.enterSwitch(this); state = SAW_NOTHING; } else { switch (state) { case SAW_NOTHING: if (ifOpCodes.get(seen)) { state = SAW_IF; startPC = getPC(); } break;  case SAW_IF: if ((seen == ICONST_0) || (seen == ICONST_1)) state = SAW_ICONST_PART1; else state = SAW_NOTHING; break;  case SAW_ICONST_PART1: if (seen == IRETURN) state = SAW_IRETURN_PART1; else state = SAW_NOTHING; break;  case SAW_IRETURN_PART1: if (switchHdlr.getNextSwitchOffset(this) == getPC()) state = SAW_NOTHING; else if ((seen == ICONST_0) || (seen == ICONST_1)) state = SAW_ICONST_PART2; else state = SAW_NOTHING; break;  case SAW_ICONST_PART2: if (seen == IRETURN) bugReporter.reportBug( new BugInstance(this, "SBR_SIMPLIFY_BOOLEAN_RETURN", LOW_PRIORITY ) .addClassAndMethod(this) .addSourceLineRange(this, startPC, getPC())); else state = SAW_NOTHING; break; }
	public void sawOpcode(int seen) {		switch (state) {			case SAW_NOTHING:				if (ifOpCodes.get(seen)) {					state = SAW_IF;					startPC = getPC();				}			break;									case SAW_IF:				if ((seen == ICONST_0) || (seen == ICONST_1))					state = SAW_ICONST_PART1;				else					state = SAW_NOTHING;			break;						case SAW_ICONST_PART1:				if (seen == IRETURN)					state = SAW_IRETURN_PART1;				else					state = SAW_NOTHING;			break;						case SAW_IRETURN_PART1:				if ((seen == ICONST_0) || (seen == ICONST_1))					state = SAW_ICONST_PART2;				else					state = SAW_NOTHING;			break;						case SAW_ICONST_PART2:				if (seen == IRETURN)					bugReporter.reportBug( new BugInstance(this, "SBR_SIMPLIFY_BOOLEAN_RETURN", LOW_PRIORITY )				        	.addClassAndMethod(this)				        	.addSourceLineRange(this, startPC, getPC()));				else					state = SAW_NOTHING;			break;		}	}