MCPcopy
hub / github.com/antlr/antlr4 / generateATNs

Method generateATNs

tool/src/org/antlr/v4/Tool.java:675–694  ·  view source on GitHub ↗
(Grammar g)

Source from the content-addressed store, hash-verified

673 }
674
675 public void generateATNs(Grammar g) {
676 DOTGenerator dotGenerator = new DOTGenerator(g);
677 List<Grammar> grammars = new ArrayList<Grammar>();
678 grammars.add(g);
679 List<Grammar> imported = g.getAllImportedGrammars();
680 if ( imported!=null ) grammars.addAll(imported);
681 for (Grammar ig : grammars) {
682 for (Rule r : ig.rules.values()) {
683 try {
684 String dot = dotGenerator.getDOT(g.atn.ruleToStartState[r.index], g.isLexer());
685 if (dot != null) {
686 writeDOTFile(g, r, dot);
687 }
688 }
689 catch (IOException ioe) {
690 errMgr.toolError(ErrorType.CANNOT_WRITE_FILE, ioe);
691 }
692 }
693 }
694 }
695
696 public static String generateInterpreterData(Grammar g) {
697 StringBuilder content = new StringBuilder();

Callers 1

Calls 8

getDOTMethod · 0.95
writeDOTFileMethod · 0.95
isLexerMethod · 0.80
toolErrorMethod · 0.80
addMethod · 0.65
addAllMethod · 0.65
valuesMethod · 0.45

Tested by

no test coverage detected