{"_id":"@alu0100973914/infix2egg-in-jison","_rev":"2-51a0dad5759b0b96465a926e6e3a3f6c","name":"@alu0100973914/infix2egg-in-jison","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@alu0100973914/infix2egg-in-jison","version":"1.0.0","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git"},"keywords":["parsing"],"author":{"name":"alu0100973914"},"license":"ISC","bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git#readme","devDependencies":{"@alu0100973914/eloquentjsegg":"*","chai":"*","gulp-shell":"^0.6.5","jison":"^0.4.18","mocha":"*","mocha-sinon":"*","should":"^13.2.1","sinon":"^5.0.3","xregexp":"^3.2.0"},"gitHead":"a53d09ae050419322c594d53e8c39aed0b66015c","description":"## [Egg repository](https://github.com/ULL-ESIT-PL-1718/egg-4-alu0100973914.git) ## [Infix to Egg repository](https://github.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914.git)","_id":"@alu0100973914/infix2egg-in-jison@1.0.0","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-E1C7dDL1yKOce8ulH7Vno1xslJ9HDhM3I49UxIzYFnei2NVHBNVLBiyaMLqJB5On/rQjpzTg8yT4M4kN8FaiMA==","shasum":"59b4cc7e8817ef9dd229c3eadcab0c3acb414fd5","tarball":"https://registry.npmjs.org/@alu0100973914/infix2egg-in-jison/-/infix2egg-in-jison-1.0.0.tgz","fileCount":37,"unpackedSize":54868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/MwECRA9TVsSAnZWagAA8ksQAIRgaQfHbriEJ245fsck\nCta4CK4LZLyGwQTgWrFlJ37oDD4khOP9r4lc6lsvpZ/fJkeZWhOE+MXvwZ61\n+myCiptztkSZLCED5YxKAuD+IuK5SuBJGYdz/AdePjcO2mM9vFHzykSpEI6h\nbmhs57P5/bV4kRegNrlxep1mg+xvJvXEO+LMMh0GThGUoKQ44wG+F27Go1EH\nAjgrWN3aVSoMQnejJ0+ydnGkivohq2AUfVG1XRQvz7CiDrGj9Xq6k4DKNu6J\nuhFeupgJiyipwvikKvWuyLrdGtDymyF27+rc9JFFzli9iFp9E8QwOS3Bt8oJ\n6ulKBTwqGcPIKqN1Yl6CAmOE28yrO8Nn8MNiufPDtTdcgaZsYDHH5jW9x25c\nOZMuy6jnZI4RyAxwIOczMiuumATlK15UPX3bo/sSlbeK0ZvV3DG1SDBjRvGB\n66G1QWXkiXf0zlXbJK+lA5Vam08MUfyfvqFJgglpbKPMj/9Fdk3/PPauEFNp\nM2zGR+Lkb48sQDUgxfq1QqIy9DYz2Q1eRdM+9qLtj5bt0nKlNYnM11jQZZYV\nUuSx11EfdAXbXQAAL+xjfuJdZOl2beiDrWay157AEWj1VgTFaW+ls4XGGk9k\nf9DLaeGKs9++21+q1m4HMOZ2AlX5FszekNRiKe4wOXnVc0Dg4pfAQgQBbDRG\nTCeq\r\n=i1ZR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwLDpxKiQN0oawm70AHiA0zChzCgAVDVglXbKAj0qzmwIgH2Q4OdQJ5zpwAS213W3kKYCv/zZYl5Z0IhnKFPBQLfY="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/infix2egg-in-jison_1.0.0_1526516738197_0.822322789755439"},"_hasShrinkwrap":false},"1.0.1":{"name":"@alu0100973914/infix2egg-in-jison","version":"1.0.1","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git"},"keywords":["parsing"],"author":{"name":"alu0100973914"},"license":"ISC","bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git/issues"},"homepage":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git#readme","devDependencies":{"@alu0100973914/eloquentjsegg":"*","chai":"*","gulp-shell":"^0.6.5","jison":"^0.4.18","mocha":"*","mocha-sinon":"*","should":"^13.2.1","sinon":"^5.0.3","xregexp":"^3.2.0"},"gitHead":"d4dd8689affadbab74819a408e7718c549e2178f","description":"[![Build Status](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914.svg?token=S9Gezg46GoVeGRv4GwA9&branch=master)](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914) [![npm version](https://badge.fury.io/js/%40alu0100973914%","_id":"@alu0100973914/infix2egg-in-jison@1.0.1","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"},"dist":{"integrity":"sha512-82fivj3s7ihug0fZmLI4A+ko1uObbSk0PyI2Lh39EY8a6QsthGNukybN/a11CdqG5h78ISpuQT6TjKxqSM9syQ==","shasum":"0218c33dc9546ae018243f9b21e23ccbc09c5c64","tarball":"https://registry.npmjs.org/@alu0100973914/infix2egg-in-jison/-/infix2egg-in-jison-1.0.1.tgz","fileCount":37,"unpackedSize":55215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/M3jCRA9TVsSAnZWagAAKagP/2odUXEQqm0zYPb6ouBW\nrylcVBf2VacjQhOx2QxIXLOJ6Er+FX4GMujoNFmhm8kK9OqGvc5hLYiMsqxb\n77Inw1mJzdSz05N9mhQq+ZVjUF2WTggRganLoH9k0q4EdMNgiZuyvOFumsXY\nA4gqbJTEdDgQ+U4ZcANQdY2EoSBcgKKQk8xBsyAIa7N6mk6QrDCgPbddLrSS\n04WYz4AZr1wURHnPdXiwAXjchCYlnwDAqyM3he/06ayMkYe1VJx0/vqo1W2e\nL3OxDKnA8gHbCJrEJM5JfTs3Jyi2Qp2GtzHnccVVLd9oBD5USV4tUfX9VwWB\nTsaMJ6KUrH25ys30PeiKKaDyjNQ2AOY+71K/CEHxsqJhJ9HR0+qlzo/M5Xr4\ntbxFJb+Q+09Yp1AI3an5C26w5BWLp6mn3KgDoHUkQ2C6+HDVS6VuoApYu1uf\ngSjjfR/rYN0mlD5hV1Ztk9w0qZCxqlr2gW3uKewIxm6u+pepkrWeutvyzLVJ\nl8rzb8ryYBHuN6sYccyoaqMYeVxl/piYoLKCflC9lI0aXA+SeHNPfkyAvH+K\nIuyJrfubiuD6o1k3FW2mrOhkJahSeB5T70oaGcDUtLt3Y63A211qUrQ+Gej8\nSyR9ZDiierjIN23umknEFyEyQVNpracaTaM8gQIMRTKbQzSeSxdvqYVCL6Re\nRe7K\r\n=m9TD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGklXhuhebGqo4voIQhjNe4V6PoLt+u1xoK+xQvSuIXuAiEAtry2nyGgwRKdzAhIdwewqeF2gX3XzNBPaPUErQ5gtS4="}]},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/infix2egg-in-jison_1.0.1_1526517217819_0.04534721345196924"},"_hasShrinkwrap":false}},"time":{"created":"2018-05-17T00:25:37.759Z","1.0.0":"2018-05-17T00:25:38.378Z","modified":"2022-04-04T13:40:56.678Z","1.0.1":"2018-05-17T00:33:37.927Z"},"maintainers":[{"name":"alu0100973914","email":"alu0100973914@ull.edu.es"}],"description":"[![Build Status](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914.svg?token=S9Gezg46GoVeGRv4GwA9&branch=master)](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914) [![npm version](https://badge.fury.io/js/%40alu0100973914%","homepage":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git#readme","keywords":["parsing"],"repository":{"type":"git","url":"git+https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git"},"author":{"name":"alu0100973914"},"bugs":{"url":"https://github.com/ULL-ESIT-PL-1718/InfixToEgg-In-Jison-alu0100973914.git/issues"},"license":"ISC","readme":"# Practice 9 of PL: Infix to Egg in Jison (i2eij)\n\n[![Build Status](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914.svg?token=S9Gezg46GoVeGRv4GwA9&branch=master)](https://travis-ci.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914)\n[![npm version](https://badge.fury.io/js/%40alu0100973914%2Finfix2egg-in-jison.svg)](https://badge.fury.io/js/%40alu0100973914%2Finfix2egg-in-jison)\n\n## [Egg repository](https://github.com/ULL-ESIT-PL-1718/egg-4-alu0100973914.git)\n## [Infix to Egg repository](https://github.com/ULL-ESIT-PL-1718/infix-to-egg-alu0100973914.git)\n\n## Compatibilities\n\n**Infix to Egg in Jison** has the same features than Infix to Egg. The same tests created for testing Infix to Egg behaviour are passed by Infix to Egg in Jison (51/51):+1:.\n\n## Grammar\nJison grammar with semantic actions can be found in the file **i2e-parser.jison** of the lib folder. To generate the parser try the command below:\n```bash\njison lib/i2e-parser.jison -o lib/i2e-parser.js\n```\n\n## Jison file without semantic actions\n\n```\n%lex\n%%\n\n(\\s+|\"//\".*|\"/*\"[^]*?\"*/\")                 /* whitespace */\n[-+]?[0-9]*\".\"?[0-9]+([eE][+-]?[0-9]+)?    return 'NUMBER'\n\"\\\"\".*?\"\\\"\"                                return 'STRING'\n(\"true\"|\"false\")                           return 'LOGICVALUE'\n(\"&&\"|\"||\")                                return 'LOGOP'\n(\"<\"|\">\"|\"==\"|\"<=\"|\">=\")                   return 'COMPOP'\n(\"+\"|\"-\")                                  return 'ADDOP'\n(\"*\"|\"/\")                                  return 'MULOP'\n\"(\"                                        return 'LP'\n\")\"                                        return 'RP'\n\"{\"                                        return 'LB'\n\"}\"                                        return 'RB'\n\",\"                                        return 'COMMA'\n\";\"                                        return 'SEMICOLON'\n\"=\"                                        return 'ASSIGN'\n\"var\"                                      return 'KW_VAR'\n\"function\"                                 return 'KW_FUNCTION'\n\"if\"                                       return 'KW_IF'\n\"else\"                                     return 'KW_ELSE'\n\"while\"                                    return 'KW_WHILE'\n[^\\s(){},\"'?:;]+                           return 'WORD'\n<<EOF>>                                    return 'EOF'\n/lex\n\n/* operator associations and precedence */\n\n%right 'ASSIGN'\n%left  'LOGOP'\n%left  'COMPOP'\n%left  'ADDOP'\n%left  'MULOP'\n\n%start program\n\n%% /* language grammar */\n\nprogram\n    : statements EOF\n    ;\n\nstatements\n    : statements statement\n    | statement\n    ;\n\nstatement\n    : declaration\n    | assignment\n    | conditional\n    | function_call\n    | function\n    | loop\n    ;\n\ndeclaration\n    : KW_VAR assignment\n    ;\n\nassignment\n    : WORD ASSIGN expr SEMICOLON\n    | WORD ASSIGN anonym_function\n    ;\n\nanonym_function\n    : KW_FUNCTION LP arguments_list RP block\n    | KW_FUNCTION LP RP block\n    ;\n\nfunction_call\n    : WORD LP arguments_list RP SEMICOLON\n    | WORD LP RP SEMICOLON\n    ;\n\nfunction\n    : KW_FUNCTION WORD LP arguments_list RP block\n    | KW_FUNCTION WORD LP RP block\n    ;\n\narguments_list\n    : expr\n    | arguments_list COMMA expr\n    ;\n\nblock\n    : LB statements RB\n    ;\n\nconditional\n    : KW_IF LP expr RP block\n    | KW_IF LP expr RP block KW_ELSE block\n    | KW_IF LP expr RP block KW_ELSE conditional\n    ;\n\nloop\n    : KW_WHILE LP expr RP block\n    ;\n\nexpr\n    : comp_expr\n    | expr LOGOP comp_expr\n    ;\n\ncomp_expr\n    : ar_expr\n    | comp_expr COMPOP ar_expr\n    ;\n\nar_expr\n    : product\n    | ar_expr ADDOP product\n\n    ;\n\nproduct\n    : final_expression\n    | product MULOP final_expression\n    ;\n\nfinal_expression\n    : LP expr RP\n    | WORD\n    | NUMBER\n    | STRING\n    | LOGICVALUE\n    ;\n```\n","readmeFilename":"README.md"}