UNPKG

@parser-generator/cli

Version:

A Parser Generator that supports LL,SLR,LR1,LALR

91 lines (86 loc) 1.62 kB
<!DOCTYPE HTML> <style> body { font-size: 16px; } table, td { border: 1px solid #DCDFE6; border-collapse: collapse; border-spacing: 0px; } table td { min-width: 50px; padding: 5px 10px } #mynetwork { width: 90%; height: 2000px; border: 1px solid lightgray; } </style> <body> <h1>Productions</h1> <table> <tr> <td>id</td> <td>body</td> <td>action</td> </tr> <% for (let prod of prods){ %> <tr> <td> <%- prod.id %> </td> <td> <%- prod.head + '->' + prod.body.join(' ') %> </td> <td> <%- prod.action %> </td> </tr> <% } %> </table> <% if(first!=undefined){ %> <!-- First 集 --> <h1>First Set</h1> <table> <% for (var i=0; i<first.length; i++){ %> <tr> <% for (var j=0; j<first[i].length; j++){ %> <td> <%- first[i][j] %> </td> <% }; %> </tr> <% }; %> </table> <% } %> <% if(follow!=undefined){ %> <!-- Follow 集 --> <h1>Follow Set</h1> <table> <% for (var i=0; i< follow.length; i++){ %> <tr> <% for (var j=0; j< follow[i].length; j++){ %> <td> <%- follow[i][j] %> </td> <% }; %> </tr> <% }; %> </table> <% } %> <% if(lrTable!=undefined){ %> <!-- LR 分析表 --> <h1>LR Parsing Table</h1> <table> <% for (var i=0; i< lrTable.length; i++){ %> <tr> <% for (var j=0; j< lrTable[i].length; j++){ %> <td> <%- lrTable[i][j] %> </td> <% }; %> </tr> <% }; %> </table> <% } %> <% if(lrAutomata!=undefined){ %> <h1>LR Automata</h1> <!-- LR 自动机 --> <div id="mynetwork"></div> <script id="automataJson" type="application/json"> <%= lrAutomata %> </script> <% } %> </body> </html>