peer-at-code-parser-java/test/SpecificCase.java
2025-02-26 23:56:51 +01:00

39 lines
1 KiB
Java

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import org.junit.jupiter.api.Test;
import dev.peerat.parser.Parser;
import dev.peerat.parser.TokenValidator;
import dev.peerat.parser.java.JavaElement;
import dev.peerat.parser.java.JavaFile;
import dev.peerat.parser.java.JavaParser;
public class SpecificCase{
@Test
void genericInMethod() throws Exception{
String clazz = "class Test{ <T> T testIt(){ return (T)null; } }";
Parser<JavaElement> parser = new JavaParser();
BufferedReader reader = new BufferedReader(new Reader() {
public int read(char[] cbuf, int off, int len) throws IOException {return 0;}
public void close() throws IOException {}
}){
String line = clazz;
@Override
public String readLine() throws IOException{
String value = line;
line = null;
return value;
}
};
parser.parse(reader, new JavaFile());
parser.build(new BufferedWriter(new FileWriter(new File("/home/ParserV2.txt"))));
}
}