⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lexercode.java

📁 SkipOOMiniJOOL教学语言的编译器前端
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		}
		{ // NFA for EQ
			{ // "="
				start = new NFAState();
				end = new NFAState();
				start.addTransition((char)61, end);
			}
			end.makeFinal(2147483616, 31);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for NOT
			{ // "!"
				start = new NFAState();
				end = new NFAState();
				start.addTransition((char)33, end);
			}
			end.makeFinal(2147483615, 32);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for ANDAND
			{ // "&&"
				start = new NFAState();
				end = new NFAState();
				NFAState cs53 = start;
				NFAState ns53;
				ns53 = new NFAState();
				cs53.addTransition((char)38, ns53);
				cs53 = ns53;
				cs53.addTransition((char)38, end);
			}
			end.makeFinal(2147483614, 33);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for OROR
			{ // "||"
				start = new NFAState();
				end = new NFAState();
				NFAState cs54 = start;
				NFAState ns54;
				ns54 = new NFAState();
				cs54.addTransition((char)124, ns54);
				cs54 = ns54;
				cs54.addTransition((char)124, end);
			}
			end.makeFinal(2147483613, 34);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for GT
			{ // ">"
				start = new NFAState();
				end = new NFAState();
				NFAState cs55 = start;
				NFAState ns55;
				cs55.addTransition((char)62, end);
			}
			end.makeFinal(2147483612, 35);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for LT
			{ // "<"
				start = new NFAState();
				end = new NFAState();
				NFAState cs56 = start;
				NFAState ns56;
				cs56.addTransition((char)60, end);
			}
			end.makeFinal(2147483611, 36);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for EQEQ
			{ // "=="
				start = new NFAState();
				end = new NFAState();
				NFAState cs57 = start;
				NFAState ns57;
				ns57 = new NFAState();
				cs57.addTransition((char)61, ns57);
				cs57 = ns57;
				cs57.addTransition((char)61, end);
			}
			end.makeFinal(2147483610, 37);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for NOTEQ
			{ // "!="
				start = new NFAState();
				end = new NFAState();
				NFAState cs58 = start;
				NFAState ns58;
				ns58 = new NFAState();
				cs58.addTransition((char)33, ns58);
				cs58 = ns58;
				cs58.addTransition((char)61, end);
			}
			end.makeFinal(2147483609, 38);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for LTEQ
			{ // "<="
				start = new NFAState();
				end = new NFAState();
				NFAState cs59 = start;
				NFAState ns59;
				ns59 = new NFAState();
				cs59.addTransition((char)60, ns59);
				cs59 = ns59;
				cs59.addTransition((char)61, end);
			}
			end.makeFinal(2147483608, 39);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for GTEQ
			{ // ">="
				start = new NFAState();
				end = new NFAState();
				NFAState cs60 = start;
				NFAState ns60;
				ns60 = new NFAState();
				cs60.addTransition((char)62, ns60);
				cs60 = ns60;
				cs60.addTransition((char)61, end);
			}
			end.makeFinal(2147483607, 40);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for LSHIFT
			{ // "<<"
				start = new NFAState();
				end = new NFAState();
				NFAState cs61 = start;
				NFAState ns61;
				ns61 = new NFAState();
				cs61.addTransition((char)60, ns61);
				cs61 = ns61;
				cs61.addTransition((char)60, end);
			}
			end.makeFinal(2147483606, 41);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for RSHIFT
			{ // ">>"
				start = new NFAState();
				end = new NFAState();
				NFAState cs62 = start;
				NFAState ns62;
				ns62 = new NFAState();
				cs62.addTransition((char)62, ns62);
				cs62 = ns62;
				cs62.addTransition((char)62, end);
			}
			end.makeFinal(2147483605, 42);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for PLUSEQ
			{ // "+="
				start = new NFAState();
				end = new NFAState();
				NFAState cs63 = start;
				NFAState ns63;
				ns63 = new NFAState();
				cs63.addTransition((char)43, ns63);
				cs63 = ns63;
				cs63.addTransition((char)61, end);
			}
			end.makeFinal(2147483604, 43);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for MINUSEQ
			{ // "-="
				start = new NFAState();
				end = new NFAState();
				NFAState cs64 = start;
				NFAState ns64;
				ns64 = new NFAState();
				cs64.addTransition((char)45, ns64);
				cs64 = ns64;
				cs64.addTransition((char)61, end);
			}
			end.makeFinal(2147483603, 44);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for MULTEQ
			{ // "*="
				start = new NFAState();
				end = new NFAState();
				NFAState cs65 = start;
				NFAState ns65;
				ns65 = new NFAState();
				cs65.addTransition((char)42, ns65);
				cs65 = ns65;
				cs65.addTransition((char)61, end);
			}
			end.makeFinal(2147483602, 45);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for DIVEQ
			{ // "/="
				start = new NFAState();
				end = new NFAState();
				NFAState cs66 = start;
				NFAState ns66;
				ns66 = new NFAState();
				cs66.addTransition((char)47, ns66);
				cs66 = ns66;
				cs66.addTransition((char)61, end);
			}
			end.makeFinal(2147483601, 46);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for MODEQ
			{ // "%="
				start = new NFAState();
				end = new NFAState();
				NFAState cs67 = start;
				NFAState ns67;
				ns67 = new NFAState();
				cs67.addTransition((char)37, ns67);
				cs67 = ns67;
				cs67.addTransition((char)61, end);
			}
			end.makeFinal(2147483600, 47);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for LSHIFTEQ
			{ // "<<="
				start = new NFAState();
				end = new NFAState();
				NFAState cs68 = start;
				NFAState ns68;
				ns68 = new NFAState();
				cs68.addTransition((char)60, ns68);
				cs68 = ns68;
				ns68 = new NFAState();
				cs68.addTransition((char)60, ns68);
				cs68 = ns68;
				cs68.addTransition((char)61, end);
			}
			end.makeFinal(2147483599, 48);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for RSHIFTEQ
			{ // ">>="
				start = new NFAState();
				end = new NFAState();
				NFAState cs69 = start;
				NFAState ns69;
				ns69 = new NFAState();
				cs69.addTransition((char)62, ns69);
				cs69 = ns69;
				ns69 = new NFAState();
				cs69.addTransition((char)62, ns69);
				cs69 = ns69;
				cs69.addTransition((char)61, end);
			}
			end.makeFinal(2147483598, 49);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for IGNORE
			{ // "\n"
				start = new NFAState();
				end = new NFAState();
				start.addTransition((char)10, end);
			}
			end.makeFinal(2147483597, 0);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for IGNORE
		{
			{
				// Concatenation
				{ // "//"
					start = new NFAState();
					end = new NFAState();
					NFAState cs29 = start;
					NFAState ns29;
					ns29 = new NFAState();
					cs29.addTransition((char)47, ns29);
					cs29 = ns29;
					cs29.addTransition((char)47, end);
				}
				NFAState ls28 = start;
				NFAState le28 = end;
				{
					{ // * or + node
		{
			{
				// Range transition
				start = new NFAState();
				end = new NFAState();
				start.addTransitionRange(' ', '~', end);
			}
		}
						NFAState os31 = start;
						NFAState oe31 = end;
						start = new NFAState();
						end = new NFAState();
						start.addTransition(NFAState.EPSILON, os31);
						oe31.addTransition(NFAState.EPSILON, end);
						oe31.addTransition(NFAState.EPSILON, os31);
						// * node
						start.addTransition(NFAState.EPSILON, end);
					}
				}
				NFAState rs28 = start;
				NFAState re28 = end;
				le28.addTransition(NFAState.EPSILON, rs28);
				start = ls28;
				end = re28;
			}
		}
			end.makeFinal(2147483596, 0);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		{ // NFA for IGNORE
		{
			{
				// OR node
				{
					// OR node
					{
						// OR node
						{
							// OR node
							{ // " "
								start = new NFAState();
								end = new NFAState();
								start.addTransition((char)32, end);
							}
							NFAState ls3 = start;
							NFAState le3 = end;
							{ // "\n"
								start = new NFAState();
								end = new NFAState();
								start.addTransition((char)10, end);
							}
							NFAState rs3 = start;
							NFAState re3 = end;
							start = new NFAState();
							end = new NFAState();
							start.addTransition(NFAState.EPSILON, ls3);
							start.addTransition(NFAState.EPSILON, rs3);
							le3.addTransition(NFAState.EPSILON, end);
							re3.addTransition(NFAState.EPSILON, end);
						}
						NFAState ls2 = start;
						NFAState le2 = end;
						{ // "\r"
							start = new NFAState();
							end = new NFAState();
							start.addTransition((char)13, end);
						}
						NFAState rs2 = start;
						NFAState re2 = end;
						start = new NFAState();
						end = new NFAState();
						start.addTransition(NFAState.EPSILON, ls2);
						start.addTransition(NFAState.EPSILON, rs2);
						le2.addTransition(NFAState.EPSILON, end);
						re2.addTransition(NFAState.EPSILON, end);
					}
					NFAState ls1 = start;
					NFAState le1 = end;
					{ // "\r"
						start = new NFAState();
						end = new NFAState();
						start.addTransition((char)13, end);
					}
					NFAState rs1 = start;
					NFAState re1 = end;
					start = new NFAState();
					end = new NFAState();
					start.addTransition(NFAState.EPSILON, ls1);
					start.addTransition(NFAState.EPSILON, rs1);
					le1.addTransition(NFAState.EPSILON, end);
					re1.addTransition(NFAState.EPSILON, end);
				}
				NFAState ls0 = start;
				NFAState le0 = end;
				{ // "\t"
					start = new NFAState();
					end = new NFAState();
					start.addTransition((char)9, end);
				}
				NFAState rs0 = start;
				NFAState re0 = end;
				start = new NFAState();
				end = new NFAState();
				start.addTransition(NFAState.EPSILON, ls0);
				start.addTransition(NFAState.EPSILON, rs0);
				le0.addTransition(NFAState.EPSILON, end);
				re0.addTransition(NFAState.EPSILON, end);
			}
		}
			end.makeFinal(2147483595, 0);
			Start.addTransition(NFAState.EPSILON, start);
			end.addTransition(NFAState.EPSILON, End);
		}
		return Start;
	}
	public LexerCode() {
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -