mips without optimize
This commit is contained in:
76
frontend/parser/Parser.java
Normal file → Executable file
76
frontend/parser/Parser.java
Normal file → Executable file
@@ -1,38 +1,38 @@
|
||||
package frontend.parser;
|
||||
|
||||
import frontend.ast.CompUnit;
|
||||
import frontend.lexer.TokenStream;
|
||||
|
||||
import java.nio.file.Files;
|
||||
|
||||
import error.Errors;
|
||||
|
||||
import java.nio.file.Paths;
|
||||
import java.io.IOException;
|
||||
|
||||
public class Parser {
|
||||
private TokenStream ts;
|
||||
private CompUnit compUnit;
|
||||
|
||||
public Parser(TokenStream ts) {
|
||||
this.ts = ts;
|
||||
this.compUnit = new CompUnit(this.ts);
|
||||
}
|
||||
|
||||
public void parse(Errors errors) {
|
||||
compUnit.parse(errors);
|
||||
}
|
||||
|
||||
public CompUnit getCompUnit() {
|
||||
return compUnit;
|
||||
}
|
||||
|
||||
public void writeToFile(String fileName) {
|
||||
try {
|
||||
String info = this.compUnit.getInfo();
|
||||
Files.write(Paths.get(fileName), info.getBytes());
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
package frontend.parser;
|
||||
|
||||
import frontend.ast.CompUnit;
|
||||
import frontend.lexer.TokenStream;
|
||||
|
||||
import java.nio.file.Files;
|
||||
|
||||
import error.Errors;
|
||||
|
||||
import java.nio.file.Paths;
|
||||
import java.io.IOException;
|
||||
|
||||
public class Parser {
|
||||
private TokenStream ts;
|
||||
private CompUnit compUnit;
|
||||
|
||||
public Parser(TokenStream ts) {
|
||||
this.ts = ts;
|
||||
this.compUnit = new CompUnit(this.ts);
|
||||
}
|
||||
|
||||
public void parse(Errors errors) {
|
||||
compUnit.parse(errors);
|
||||
}
|
||||
|
||||
public CompUnit getCompUnit() {
|
||||
return compUnit;
|
||||
}
|
||||
|
||||
public void writeToFile(String fileName) {
|
||||
try {
|
||||
String info = this.compUnit.getInfo();
|
||||
Files.write(Paths.get(fileName), info.getBytes());
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user