|
3 | 3 | * [Usage](https://github.com/vadyushkins/kotgll#usage) |
4 | 4 | * [From sources](https://github.com/vadyushkins/kotgll#from-sources) |
5 | 5 | * [Using JAR](https://github.com/vadyushkins/kotgll#using-jar) |
| 6 | + * [CFG Format Example](https://github.com/vadyushkins/kotgll#cfg-format-example) |
| 7 | + * [RSM Format Example](https://github.com/vadyushkins/kotgll#rsm-format-example) |
6 | 8 |
|
7 | 9 | ## About |
8 | 10 | GLL implementation in Kotlin |
@@ -66,3 +68,33 @@ curl -L -O https://github.com/vadyushkins/kotgll/releases/download/v1.0.0/kotgll |
66 | 68 | ```text |
67 | 69 | java -jar kotgll-1.0.0.jar --input graph --grammar rsm --sppf off --inputPath src/test/resources/cli/TestGraphReadWriteCSV/dyck.csv --grammarPath src/test/resources/cli/TestRSMReadWriteTXT/dyck.txt --outputPath ./result.txt |
68 | 70 | ``` |
| 71 | +### CFG Format Example |
| 72 | + |
| 73 | +```text |
| 74 | +StartNonterminal("S") |
| 75 | +Nonterminal("S") -> Terminal("subClassOf_r") Nonterminal("S") Terminal("subClassOf") |
| 76 | +Nonterminal("S") -> Terminal("subClassOf_r") Terminal("subClassOf") |
| 77 | +Nonterminal("S") -> Terminal("type_r") Nonterminal("S") Terminal("type") |
| 78 | +Nonterminal("S") -> Terminal("type_r") Terminal("type") |
| 79 | +``` |
| 80 | + |
| 81 | +### RSM Format Example |
| 82 | + |
| 83 | +```text |
| 84 | +StartState(id=0,nonterminal=Nonterminal("S"),isStart=true,isFinal=false) |
| 85 | +State(id=0,nonterminal=Nonterminal("S"),isStart=true,isFinal=false) |
| 86 | +State(id=1,nonterminal=Nonterminal("S"),isStart=false,isFinal=false) |
| 87 | +State(id=4,nonterminal=Nonterminal("S"),isStart=false,isFinal=false) |
| 88 | +State(id=3,nonterminal=Nonterminal("S"),isStart=false,isFinal=true) |
| 89 | +State(id=2,nonterminal=Nonterminal("S"),isStart=false,isFinal=false) |
| 90 | +State(id=6,nonterminal=Nonterminal("S"),isStart=false,isFinal=true) |
| 91 | +State(id=5,nonterminal=Nonterminal("S"),isStart=false,isFinal=false) |
| 92 | +TerminalEdge(tail=0,head=1,terminal=Terminal("subClassOf_r")) |
| 93 | +TerminalEdge(tail=0,head=4,terminal=Terminal("type_r")) |
| 94 | +TerminalEdge(tail=1,head=3,terminal=Terminal("subClassOf")) |
| 95 | +NonterminalEdge(tail=1,head=2,nonterminal=Nonterminal("S")) |
| 96 | +TerminalEdge(tail=4,head=6,terminal=Terminal("type")) |
| 97 | +NonterminalEdge(tail=4,head=5,nonterminal=Nonterminal("S")) |
| 98 | +TerminalEdge(tail=2,head=3,terminal=Terminal("subClassOf")) |
| 99 | +TerminalEdge(tail=5,head=6,terminal=Terminal("type")) |
| 100 | +``` |
0 commit comments