use of org.anarres.cpp.CppReader in project ihmc-pub-sub by ihmcrobotics.
the class IDLGenerator method createPreProcessedInputStream.
private static Reader createPreProcessedInputStream(File idlFile, List<File> includePathIn) throws IOException {
PreprocessorFilter preprocessor = new PreprocessorFilter();
preprocessor.addFeature(Feature.KEEPALLCOMMENTS);
preprocessor.addFeature(Feature.KEEPCOMMENTS);
preprocessor.addFeature(Feature.LINEMARKERS);
preprocessor.addFeature(Feature.INCLUDENEXT);
ArrayList<String> includePath = new ArrayList<>();
includePath.add(idlFile.getParent());
for (File include : includePathIn) {
includePath.add(include.getAbsolutePath());
}
preprocessor.setSystemIncludePath(includePath);
preprocessor.setQuoteIncludePath(includePath);
preprocessor.addInput(idlFile);
CppReader reader = new CppReader(preprocessor);
return new BufferedReader(reader);
}
Aggregations