@designliquido/delegua 0.25.1 → 0.25.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/package.json +1 -1
- package/fontes/analisador-semantico/analisador-semantico.d.ts +5 -2
- package/fontes/analisador-semantico/analisador-semantico.js +16 -7
- package/fontes/analisador-semantico/analisador-semantico.js.map +1 -1
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.d.ts +4 -1
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js +10 -1
- package/fontes/analisador-semantico/dialetos/analisador-semantico-birl.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +2 -3
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +0 -3
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +3 -4
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-mapler.js +4 -4
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-mapler.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js +2 -2
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-pitugues.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-ipt.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js +2 -2
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.d.ts +7 -6
- package/fontes/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js +62 -2
- package/fontes/avaliador-sintatico/dialetos/potigol/avaliador-sintatico-potigol.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js +13 -7
- package/fontes/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js.map +1 -1
- package/fontes/declaracoes/const-multiplo.d.ts +14 -0
- package/fontes/declaracoes/const-multiplo.js +20 -0
- package/fontes/declaracoes/const-multiplo.js.map +1 -0
- package/fontes/declaracoes/index.d.ts +3 -0
- package/fontes/declaracoes/index.js +3 -0
- package/fontes/declaracoes/index.js.map +1 -1
- package/fontes/declaracoes/leia-multiplo.d.ts +15 -0
- package/fontes/declaracoes/leia-multiplo.js +22 -0
- package/fontes/declaracoes/leia-multiplo.js.map +1 -0
- package/fontes/declaracoes/leia.d.ts +6 -4
- package/fontes/declaracoes/leia.js +5 -4
- package/fontes/declaracoes/leia.js.map +1 -1
- package/fontes/declaracoes/var-multiplo.d.ts +15 -0
- package/fontes/declaracoes/var-multiplo.js +21 -0
- package/fontes/declaracoes/var-multiplo.js.map +1 -0
- package/fontes/interfaces/avaliador-sintatico-interface.d.ts +1 -4
- package/fontes/interfaces/visitante-comum-interface.d.ts +7 -1
- package/fontes/interpretador/dialetos/birl/interpretador-birl.d.ts +1 -1
- package/fontes/interpretador/dialetos/birl/interpretador-birl.js +2 -2
- package/fontes/interpretador/dialetos/birl/interpretador-birl.js.map +1 -1
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +4 -1
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +9 -0
- package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.d.ts +6 -3
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js +9 -0
- package/fontes/interpretador/dialetos/egua-classico/resolvedor/resolvedor.js.map +1 -1
- package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.d.ts +4 -1
- package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js +9 -0
- package/fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.js.map +1 -1
- package/fontes/interpretador/dialetos/potigol/comum.d.ts +13 -0
- package/fontes/interpretador/dialetos/potigol/comum.js +47 -1
- package/fontes/interpretador/dialetos/potigol/comum.js.map +1 -1
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.d.ts +2 -0
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.js +7 -0
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.js.map +1 -1
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol.d.ts +2 -0
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol.js +7 -0
- package/fontes/interpretador/dialetos/potigol/interpretador-potigol.js.map +1 -1
- package/fontes/interpretador/interpretador-base.d.ts +32 -13
- package/fontes/interpretador/interpretador-base.js +66 -22
- package/fontes/interpretador/interpretador-base.js.map +1 -1
- package/fontes/interpretador/pilha-escopos-execucao.js +20 -6
- package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/potigol.d.ts +6 -0
- package/fontes/lexador/dialetos/palavras-reservadas/potigol.js +6 -0
- package/fontes/lexador/dialetos/palavras-reservadas/potigol.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +3 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +3 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
- package/fontes/tipos-de-simbolos/potigol.d.ts +6 -0
- package/fontes/tipos-de-simbolos/potigol.js +6 -0
- package/fontes/tipos-de-simbolos/potigol.js.map +1 -1
- package/fontes/tipos-de-simbolos/visualg.d.ts +3 -0
- package/fontes/tipos-de-simbolos/visualg.js +3 -0
- package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpretador-portugol-ipt.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.ts"],"names":[],"mappings":";;;;;;AAwBA,gEAA4D;AAC5D,oDAAmD;AACnD,gDAA0D;AAM1D,8CAAwF;AACxF,yEAAoE;AAEpE,2FAAsE;AACtE,uDAA0D;AAE1D,MAAa,wBAAwB;IAcjC,YAAY,aAAqB,EAAE,kBAA4B,IAAI,EAAE,4BAAsC,IAAI;QAX/G,oBAAe,GAAa,IAAI,CAAC;QACjC,8BAAyB,GAAa,IAAI,CAAC;QAQ3C,2BAAsB,GAAkB,EAAE,CAAC;QAGvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,IAAI,CAAC,eAAe,GAAG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;QACtD,IAAI,CAAC,yBAAyB,GAAG,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAExG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC,oBAAoB,GAAG,IAAI,6CAAoB,EAAE,CAAC;QACvD,MAAM,cAAc,GAAmB;YACnC,WAAW,EAAE,EAAE;YACf,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE,IAAI,kCAAe,EAAE;YAC/B,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,OAAO;YACb,eAAe,EAAE,KAAK;SACzB,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC;IAED,sBAAsB,CAAC,SAAiB;QACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAChD,CAAC;IAED,sBAAsB,CAAC,SAAc;QACjC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAChD,CAAC;IAED,yBAAyB,CAAC,UAAoB;QAC1C,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAChD,CAAC;IAED,uBAAuB,CAAC,SAAkB;QACtC,OAAO,SAAS,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiC;QAC3C,qFAAqF;QACrF,mEAAmE;QACnE,8BAA8B;QAC9B,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE;YAC/C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SACvB;QAED,OAAO,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,2BAA2B,CAAC,SAAc;QACtC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,sBAAsB,CAAC,SAAc;QACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;OAOG;IACO,yBAAyB,CAC/B,QAA0B,EAC1B,OAAgC,EAChC,QAAiC;QAEjC,MAAM,WAAW,GAAW,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/G,MAAM,YAAY,GAAW,QAAQ,CAAC,IAAI;YACtC,CAAC,CAAC,QAAQ,CAAC,IAAI;YACf,CAAC,CAAC,OAAO,QAAQ,KAAK,QAAQ;gBAC9B,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,WAAW,KAAK,QAAQ,IAAI,YAAY,KAAK,QAAQ;YAAE,OAAO;QAClE,MAAM,IAAI,gCAAqB,CAAC,QAAQ,EAAE,kCAAkC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClG,CAAC;IAES,MAAM,CAAC,QAAiC,EAAE,OAAgC;QAChF,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACpC,OAAO,QAAQ,KAAK,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,SAAc;QACxC,IAAI;YACA,MAAM,QAAQ,GAA4B,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACjF,MAAM,OAAO,GAA4B,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC/E,MAAM,aAAa,GAAQ,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzF,MAAM,YAAY,GAAQ,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YACrF,MAAM,YAAY,GAAW,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAC,MAAM,CAAC;gBACzD,CAAC,CAAC,QAAQ,CAAC,IAAI;gBACf,CAAC,CAAC,IAAA,mCAAmB,EAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,WAAW,GAAW,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,MAAM,CAAC,EAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,mCAAmB,EAAC,OAAO,CAAC,CAAC;YAE1G,QAAQ,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC7B,KAAK,sBAAe,CAAC,aAAa;oBAC9B,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;gBAEjD,KAAK,sBAAe,CAAC,KAAK;oBACtB,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,WAAW;oBAC5B,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzD,KAAK,sBAAe,CAAC,KAAK;oBACtB,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,WAAW;oBAC5B,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEzD,KAAK,sBAAe,CAAC,SAAS;oBAC1B,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,MAAM;oBACvB,IAAI,YAAY,KAAK,QAAQ,IAAI,WAAW,KAAK,QAAQ,EAAE;wBACvD,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;qBACvD;yBAAM;wBACH,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;qBACvD;gBAEL,KAAK,sBAAe,CAAC,OAAO;oBACxB,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,eAAe;oBAChC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEpE,KAAK,sBAAe,CAAC,aAAa;oBAC9B,IAAI,YAAY,KAAK,OAAO,IAAI,WAAW,KAAK,OAAO,EAAE;wBACrD,+DAA+D;wBAC/D,oDAAoD;wBACpD,2CAA2C;wBAC3C,IAAI,YAAY,KAAK,OAAO,IAAI,WAAW,KAAK,OAAO,EAAE;4BACrD,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;yBACvD;wBAED,IAAI,YAAY,KAAK,OAAO,EAAE;4BAC1B,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;yBACrD;wBAED,OAAO,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;qBACrD;oBAED,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,MAAM;oBACvB,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBAExD,KAAK,sBAAe,CAAC,SAAS;oBAC1B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;gBAErD,KAAK,sBAAe,CAAC,KAAK;oBACtB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;aACvD;SACJ;QAAC,OAAO,IAAS,EAAE;YAChB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC/B;IACL,CAAC;IAED,yBAAyB,CAAC,SAAc;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,6BAA6B,CAAC,SAAmB;QAC7C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAES,gBAAgB,CAAC,OAAyB;QAChD,OAAO,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,0BAA0B,CAAC,SAAmB;QAC1C,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,4BAA4B,CAAC,UAAqB;QAC9C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAe;QACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACxG,OAAO,IAAI,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAC7B,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAa,EAAE,EAAE;YAC5D,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED,sBAAsB,CAAC,SAAc;QACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,WAAW,CAAC,MAAW;QACnB,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QAClC,IAAI,OAAO,MAAM,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,UAAc;QACpC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC3D,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;SACvD;QAED,IAAI,UAAU,CAAC,YAAY,KAAK,IAAI,EAAE;YAClC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;SACvD;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,qBAAqB,CAAC,UAAgB;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAED,uBAAuB,CAAC,UAAmB;QACvC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,sBAAsB,CAAC,UAAiB;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,UAA6B;QACjE,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,MAAM,QAAQ,GAA4B,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAEnF,MAAM,aAAa,GAAQ,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEzF,MAAM,YAAY,GAAW,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC;QAE/F,SAAS,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,aAAa,GAAG,CAAC,EAAE;YAC7E,SAAS,GAAG,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,qBAAqB,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;SACvG;QAED,IAAI,UAAU,CAAC,OAAO,GAAG,CAAC,EAAE;YACxB,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAC/C;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,wBAAwB,CAAC,UAAmB;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,sBAAsB,CAAC,UAAiB;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,yBAAyB,CAAC,UAAoB;QAC1C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,yBAAyB,CAAC,UAAoB;QAC1C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAES,KAAK,CAAC,wBAAwB,CAAC,UAAuB;QAC5D,IAAI,YAAY,GAAW,EAAE,CAAC;QAE9B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAChC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACzD,IAAI,KAAK,GAAG,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,cAAc,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC;YAExG,YAAY,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC;SAC/C;QAED,OAAO,YAAY,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,wBAAwB,CAAC,UAAmB;QAC9C,IAAI;YACA,MAAM,YAAY,GAAW,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACxF,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;SACf;QAAC,OAAO,IAAS,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBACZ,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,WAAW,EAAE,UAAU,CAAC,WAAW;aACtC,CAAC,CAAC;SACN;IACL,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,UAA6B;QACjE,IAAI;YACA,MAAM,YAAY,GAAW,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACxF,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;SACf;QAAC,OAAO,IAAS,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBACZ,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,WAAW,EAAE,UAAU,CAAC,WAAW;aACtC,CAAC,CAAC;SACN;IACL,CAAC;IAED,aAAa,CAAC,WAAyB,EAAE,QAA0B;QAC/D,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,qBAAqB,CAAC,UAAiB;QACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAES,KAAK,CAAC,sBAAsB,CAAC,UAAe;QAClD,IAAI,oBAAoB,GAAG,IAAI,CAAC;QAChC,IAAI,UAAU,CAAC,aAAa,KAAK,IAAI,EAAE;YACnC,oBAAoB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;SACvE;QAED,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,KAAK,SAAS,EAAE;YACrE,UAAU,GAAG,oBAAoB,CAAC,cAAc,CAAC,OAAO,CAAC;gBACrD,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBAC5B,CAAC,CAAC,oBAAoB,CAAC;SAC9B;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CAAC,UAAe;QACtC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAEjE,IAAI,OAAO,CAAC;QACZ,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE;YAC/B,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;SAC7B;QAED,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE1F,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,sBAAsB,CAAC,UAAiB;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,wBAAwB,CAAC,UAAqB;QAC1C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,sBAAsB,CAAC,UAAmB;QACtC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,wBAAwB,CAAC,UAAmB;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,6BAA6B,CAAC,SAAc;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,mCAAmC,CAAC,SAAc;QAC9C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,oCAAoC,CAAC,SAAc;QAC/C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,4BAA4B,CAAC,SAAc;QACvC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,gCAAgC,CAAC,UAA4B;QACzD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,uBAAuB,CAAC,UAAkB;QACtC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,4BAA4B,CAAC,SAAc;QACvC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,oBAAoB,CAAC,SAAc;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,0BAA0B,CAAC,SAAc;QACrC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,qBAAqB,CAAC,SAAc;QAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,qBAAqB,CAAC,SAAgB;QAClC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,SAAS,CAAC,MAAW;QACjB,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QAC3D,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE;YAC7B,OAAO,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;SAC1C;QAED,IAAI,MAAM,YAAY,IAAI,EAAE;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;gBACtC,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,MAAM;aACpB,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACjC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QACzC,IAAI,MAAM,CAAC,KAAK,YAAY,yBAAY;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAC1E,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE9D,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,UAAsB,EAAE,gBAAgB,GAAG,KAAK;QAC3D,MAAM,SAAS,GAAQ,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,gBAAgB,EAAE;YAClB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;SACnD;QACD,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,SAAS,EAAE;YAC7C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;SAC/D;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,oBAAoB,CAAC,cAAc,GAAG,KAAK;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;QAC7D,IAAI;YACA,IAAI,eAAoB,CAAC;YACzB,OAEI,CAAC,CAAC,eAAe,YAAY,gBAAM,CAAC,IAAI,YAAY,CAAC,eAAe,GAAG,YAAY,CAAC,WAAW,CAAC,MAAM,EACtG,YAAY,CAAC,eAAe,EAAE,EAChC;gBACE,eAAe,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC;aACjG;YAED,OAAO,eAAe,CAAC;SAC1B;QAAC,OAAO,IAAS,EAAE;YAChB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC/B;gBAAS;YACN,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,CAAC;YAC1C,IAAI,cAAc,EAAE;gBAChB,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;gBAC/D,cAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAC3C,cAAc,CAAC,QAAQ,CAAC,OAAO,EAC/B,YAAY,CAAC,QAAQ,CAAC,OAAO,CAChC,CAAC;aACL;SACJ;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,WAAyB,EAAE,cAAwB;QACjE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAEhB,MAAM,cAAc,GAAmB;YACnC,WAAW,EAAE,WAAW;YACxB,eAAe,EAAE,CAAC;YAClB,QAAQ,EAAE,IAAI,kCAAe,EAAE;YAC/B,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,OAAO;YACb,eAAe,EAAE,KAAK;SACzB,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAEnD,IAAI;YACA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YACtE,IAAI,aAAa,YAAY,gCAAqB,EAAE;gBAChD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aAClC;SACJ;QAAC,OAAO,IAAS,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzB;gBAAS;YACN,MAAM,OAAO,GAAG;gBACZ,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,sBAAsB;aACjB,CAAC;YAE1B,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC;YACjC,OAAO,OAAO,CAAC;SAClB;IACL,CAAC;CACJ;AArhBD,4DAqhBC"}
|
|
1
|
+
{"version":3,"file":"interpretador-portugol-ipt.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/portugol-ipt/interpretador-portugol-ipt.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,3 +6,16 @@ import { InterpretadorBase } from "../../interpretador-base";
|
|
|
6
6
|
* @returns O resultado da execução.
|
|
7
7
|
*/
|
|
8
8
|
export declare function visitarExpressaoAcessoMetodo(interpretador: InterpretadorBase, expressao: AcessoMetodo): Promise<any>;
|
|
9
|
+
/**
|
|
10
|
+
* Resolve todas as interpolações em um texto.
|
|
11
|
+
* @param {texto} textoOriginal O texto original com as variáveis interpoladas.
|
|
12
|
+
* @returns Uma lista de variáveis interpoladas.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolverInterpolacoes(interpretador: InterpretadorBase, textoOriginal: string, linha: number): Promise<any[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Retira a interpolação de um texto.
|
|
17
|
+
* @param {texto} texto O texto
|
|
18
|
+
* @param {any[]} variaveis A lista de variaveis interpoladas
|
|
19
|
+
* @returns O texto com o valor das variaveis.
|
|
20
|
+
*/
|
|
21
|
+
export declare function retirarInterpolacao(texto: string, variaveis: any[]): string;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.visitarExpressaoAcessoMetodo = void 0;
|
|
6
|
+
exports.retirarInterpolacao = exports.resolverInterpolacoes = exports.visitarExpressaoAcessoMetodo = void 0;
|
|
7
7
|
const estruturas_1 = require("../../../estruturas");
|
|
8
8
|
const inferenciador_1 = require("./inferenciador");
|
|
9
9
|
const primitivas_numero_1 = __importDefault(require("../../../bibliotecas/dialetos/potigol/primitivas-numero"));
|
|
@@ -67,4 +67,50 @@ async function visitarExpressaoAcessoMetodo(interpretador, expressao) {
|
|
|
67
67
|
return Promise.reject(new excecoes_1.ErroEmTempoDeExecucao(expressao.simbolo, `Método para objeto ou primitiva não encontrado: ${expressao.simbolo.lexema}.`, expressao.linha));
|
|
68
68
|
}
|
|
69
69
|
exports.visitarExpressaoAcessoMetodo = visitarExpressaoAcessoMetodo;
|
|
70
|
+
/**
|
|
71
|
+
* Resolve todas as interpolações em um texto.
|
|
72
|
+
* @param {texto} textoOriginal O texto original com as variáveis interpoladas.
|
|
73
|
+
* @returns Uma lista de variáveis interpoladas.
|
|
74
|
+
*/
|
|
75
|
+
async function resolverInterpolacoes(interpretador, textoOriginal, linha) {
|
|
76
|
+
const variaveis = textoOriginal.match(interpretador.regexInterpolacao);
|
|
77
|
+
let resultadosAvaliacaoSintatica = variaveis.map((s) => {
|
|
78
|
+
const expressao = s.replace(/[\{\}]*/gm, '');
|
|
79
|
+
let microLexador = interpretador.microLexador.mapear(expressao);
|
|
80
|
+
const resultadoMicroAvaliadorSintatico = interpretador.microAvaliadorSintatico.analisar(microLexador, linha);
|
|
81
|
+
return {
|
|
82
|
+
nomeVariavel: expressao,
|
|
83
|
+
resultadoMicroAvaliadorSintatico
|
|
84
|
+
};
|
|
85
|
+
});
|
|
86
|
+
// TODO: Verificar erros do `resultadosAvaliacaoSintatica`.
|
|
87
|
+
const resolucoesPromises = await Promise.all(resultadosAvaliacaoSintatica
|
|
88
|
+
.flatMap(r => r.resultadoMicroAvaliadorSintatico.declaracoes)
|
|
89
|
+
.map(d => interpretador.avaliar(d)));
|
|
90
|
+
return resolucoesPromises.map((item, indice) => ({
|
|
91
|
+
variavel: resultadosAvaliacaoSintatica[indice].nomeVariavel,
|
|
92
|
+
valor: item
|
|
93
|
+
}));
|
|
94
|
+
}
|
|
95
|
+
exports.resolverInterpolacoes = resolverInterpolacoes;
|
|
96
|
+
/**
|
|
97
|
+
* Retira a interpolação de um texto.
|
|
98
|
+
* @param {texto} texto O texto
|
|
99
|
+
* @param {any[]} variaveis A lista de variaveis interpoladas
|
|
100
|
+
* @returns O texto com o valor das variaveis.
|
|
101
|
+
*/
|
|
102
|
+
function retirarInterpolacao(texto, variaveis) {
|
|
103
|
+
let textoFinal = texto;
|
|
104
|
+
variaveis.forEach((elemento) => {
|
|
105
|
+
var _a, _b, _c;
|
|
106
|
+
if (((_a = elemento === null || elemento === void 0 ? void 0 : elemento.valor) === null || _a === void 0 ? void 0 : _a.tipo) === 'lógico') {
|
|
107
|
+
textoFinal = textoFinal.replace('{' + elemento.variavel + '}', this.paraTexto((_b = elemento === null || elemento === void 0 ? void 0 : elemento.valor) === null || _b === void 0 ? void 0 : _b.valor));
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
textoFinal = textoFinal.replace('{' + elemento.variavel + '}', ((_c = elemento === null || elemento === void 0 ? void 0 : elemento.valor) === null || _c === void 0 ? void 0 : _c.valor) || (elemento === null || elemento === void 0 ? void 0 : elemento.valor));
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
return textoFinal;
|
|
114
|
+
}
|
|
115
|
+
exports.retirarInterpolacao = retirarInterpolacao;
|
|
70
116
|
//# sourceMappingURL=comum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comum.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/comum.ts"],"names":[],"mappings":";;;;;;AACA,oDAA0F;AAE1F,mDAAsD;AAEtD,gHAAuF;AACvF,8GAAqF;AACrF,8GAAqF;AACrF,gDAA0D;AAG1D;;;;EAIE;AACK,KAAK,UAAU,4BAA4B,CAAC,aAAgC,EAAE,SAAuB;IACzG,MAAM,cAAc,GAAsB,MAAM,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC;IAE9F,IAAI,MAAM,YAAY,gCAAmB,EAAE;QACvC,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;KAClD;IAED,4CAA4C;IAC5C,yCAAyC;IACzC,IAAI,MAAM,CAAC,WAAW,KAAK,MAAM,EAAE;QAC/B,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;KACnD;IAED,oCAAoC;IACpC,yDAAyD;IACzD,IAAI,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE;QACxD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;KAC3C;IAED,oCAAoC;IACpC,yDAAyD;IACzD,IAAI,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE;QACtD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;KAC3C;IAED,IAAI,MAAM,YAAY,0BAAa,EAAE;QACjC,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;KAC/D;IAED,IAAI,UAAU,GAAQ,cAAc,CAAC,IAAI,CAAC;IAC1C,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,EAAE;QACjD,UAAU,GAAG,IAAA,mCAAmB,EAAC,cAAqB,CAAC,CAAC;KAC3D;IAED,QAAQ,UAAU,EAAE;QAChB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACT,MAAM,uBAAuB,GAAa,2BAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrF,IAAI,uBAAuB,EAAE;gBACzB,OAAO,IAAI,4BAAe,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;aAC/D;YACD,MAAM;QACV,KAAK,OAAO;YACR,MAAM,sBAAsB,GAAa,0BAAe,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACnF,IAAI,sBAAsB,EAAE;gBACxB,OAAO,IAAI,4BAAe,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;aAC9D;YACD,MAAM;QACV,KAAK,OAAO;YACR,MAAM,sBAAsB,GAAa,0BAAe,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACnF,IAAI,sBAAsB,EAAE;gBACxB,OAAO,IAAI,4BAAe,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;aAC9D;YACD,MAAM;KACb;IAED,OAAO,OAAO,CAAC,MAAM,CACjB,IAAI,gCAAqB,CACrB,SAAS,CAAC,OAAO,EACjB,mDAAmD,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,EAC9E,SAAS,CAAC,KAAK,CAClB,CACJ,CAAC;AACL,CAAC;AAhED,oEAgEC"}
|
|
1
|
+
{"version":3,"file":"comum.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/comum.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,7 @@ import { AcessoMetodo } from "../../../construtos";
|
|
|
2
2
|
import { InterpretadorComDepuracao } from "../../interpretador-com-depuracao";
|
|
3
3
|
export declare class InterpretadorPotigolComDepuracao extends InterpretadorComDepuracao {
|
|
4
4
|
constructor(diretorioBase: string, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
|
|
5
|
+
protected resolverInterpolacoes(textoOriginal: string, linha: number): Promise<any[]>;
|
|
6
|
+
protected retirarInterpolacao(texto: string, variaveis: any[]): string;
|
|
5
7
|
visitarExpressaoAcessoMetodo(expressao: AcessoMetodo): Promise<any>;
|
|
6
8
|
}
|
|
@@ -31,8 +31,15 @@ class InterpretadorPotigolComDepuracao extends interpretador_com_depuracao_1.Int
|
|
|
31
31
|
constructor(diretorioBase, funcaoDeRetorno = null, funcaoDeRetornoMesmaLinha = null) {
|
|
32
32
|
super(diretorioBase, funcaoDeRetorno, funcaoDeRetornoMesmaLinha);
|
|
33
33
|
this.expandirPropriedadesDeObjetosEmEspacoVariaveis = true;
|
|
34
|
+
this.regexInterpolacao = /{(.*?)}/g;
|
|
34
35
|
(0, biblioteca_global_1.registrarBibliotecaGlobalPotigol)(this, this.pilhaEscoposExecucao);
|
|
35
36
|
}
|
|
37
|
+
async resolverInterpolacoes(textoOriginal, linha) {
|
|
38
|
+
return comum.resolverInterpolacoes(this, textoOriginal, linha);
|
|
39
|
+
}
|
|
40
|
+
retirarInterpolacao(texto, variaveis) {
|
|
41
|
+
return comum.retirarInterpolacao(texto, variaveis);
|
|
42
|
+
}
|
|
36
43
|
async visitarExpressaoAcessoMetodo(expressao) {
|
|
37
44
|
return comum.visitarExpressaoAcessoMetodo(this, expressao);
|
|
38
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpretador-potigol-com-depuracao.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+FAA2G;AAE3G,mFAA8E;AAE9E,+CAAiC;AAEjC,MAAa,gCAAiC,SAAQ,uDAAyB;IAC3E,YACI,aAAqB,EACrB,kBAA4B,IAAI,EAChC,4BAAsC,IAAI;QAE1C,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,yBAAyB,CAAC,CAAC;QACjE,IAAI,CAAC,8CAA8C,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"interpretador-potigol-com-depuracao.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+FAA2G;AAE3G,mFAA8E;AAE9E,+CAAiC;AAEjC,MAAa,gCAAiC,SAAQ,uDAAyB;IAC3E,YACI,aAAqB,EACrB,kBAA4B,IAAI,EAChC,4BAAsC,IAAI;QAE1C,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,yBAAyB,CAAC,CAAC;QACjE,IAAI,CAAC,8CAA8C,GAAG,IAAI,CAAC;QAC3D,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;QAEpC,IAAA,oDAAgC,EAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC;IAES,KAAK,CAAC,qBAAqB,CAAC,aAAqB,EAAE,KAAa;QACtE,OAAO,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAES,mBAAmB,CAAC,KAAa,EAAE,SAAgB;QACzD,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,SAAuB;QACtD,OAAO,KAAK,CAAC,4BAA4B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;CACJ;AAxBD,4EAwBC"}
|
|
@@ -5,5 +5,7 @@ import { AcessoMetodo } from "../../../construtos";
|
|
|
5
5
|
*/
|
|
6
6
|
export declare class InterpretadorPotigol extends InterpretadorBase {
|
|
7
7
|
constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
|
|
8
|
+
protected resolverInterpolacoes(textoOriginal: string, linha: number): Promise<any[]>;
|
|
9
|
+
protected retirarInterpolacao(texto: string, variaveis: any[]): string;
|
|
8
10
|
visitarExpressaoAcessoMetodo(expressao: AcessoMetodo): Promise<any>;
|
|
9
11
|
}
|
|
@@ -34,8 +34,15 @@ class InterpretadorPotigol extends interpretador_base_1.InterpretadorBase {
|
|
|
34
34
|
constructor(diretorioBase, performance = false, funcaoDeRetorno = null, funcaoDeRetornoMesmaLinha = null) {
|
|
35
35
|
super(diretorioBase, performance, funcaoDeRetorno, funcaoDeRetornoMesmaLinha);
|
|
36
36
|
this.expandirPropriedadesDeObjetosEmEspacoVariaveis = true;
|
|
37
|
+
this.regexInterpolacao = /{(.*?)}/g;
|
|
37
38
|
(0, biblioteca_global_1.registrarBibliotecaGlobalPotigol)(this, this.pilhaEscoposExecucao);
|
|
38
39
|
}
|
|
40
|
+
async resolverInterpolacoes(textoOriginal, linha) {
|
|
41
|
+
return comum.resolverInterpolacoes(this, textoOriginal, linha);
|
|
42
|
+
}
|
|
43
|
+
retirarInterpolacao(texto, variaveis) {
|
|
44
|
+
return comum.retirarInterpolacao(texto, variaveis);
|
|
45
|
+
}
|
|
39
46
|
async visitarExpressaoAcessoMetodo(expressao) {
|
|
40
47
|
return comum.visitarExpressaoAcessoMetodo(this, expressao);
|
|
41
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpretador-potigol.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/interpretador-potigol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAA6D;AAE7D,+FAA2G;AAG3G,+CAAiC;AAEjC;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sCAAiB;IACvD,YACI,aAAqB,EACrB,WAAW,GAAG,KAAK,EACnB,kBAA4B,IAAI,EAChC,4BAAsC,IAAI;QAE1C,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,yBAAyB,CAAC,CAAC;QAC9E,IAAI,CAAC,8CAA8C,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"interpretador-potigol.js","sourceRoot":"","sources":["../../../../../fontes/interpretador/dialetos/potigol/interpretador-potigol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAA6D;AAE7D,+FAA2G;AAG3G,+CAAiC;AAEjC;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sCAAiB;IACvD,YACI,aAAqB,EACrB,WAAW,GAAG,KAAK,EACnB,kBAA4B,IAAI,EAChC,4BAAsC,IAAI;QAE1C,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,yBAAyB,CAAC,CAAC;QAC9E,IAAI,CAAC,8CAA8C,GAAG,IAAI,CAAC;QAC3D,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;QAEpC,IAAA,oDAAgC,EAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC;IAES,KAAK,CAAC,qBAAqB,CAAC,aAAqB,EAAE,KAAa;QACtE,OAAO,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAES,mBAAmB,CAAC,KAAa,EAAE,SAAgB;QACzD,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,SAAuB;QACtD,OAAO,KAAK,CAAC,4BAA4B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;CACJ;AAzBD,oDAyBC"}
|
|
@@ -2,7 +2,7 @@ import { EspacoVariaveis } from '../espaco-variaveis';
|
|
|
2
2
|
import { MicroLexador } from './../../fontes/lexador/micro-lexador';
|
|
3
3
|
import { MicroAvaliadorSintatico } from './../../fontes/avaliador-sintatico/micro-avaliador-sintatico';
|
|
4
4
|
import { InterpretadorInterface, SimboloInterface, VariavelInterface } from '../interfaces';
|
|
5
|
-
import { Bloco, Classe, Const, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Falhar, Fazer, FuncaoDeclaracao, Importar, Leia, Para, ParaCada, Retorna, Se, Tente, Var } from '../declaracoes';
|
|
5
|
+
import { Bloco, Classe, Const, ConstMultiplo, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Falhar, Fazer, FuncaoDeclaracao, Importar, Leia, LeiaMultiplo, Para, ParaCada, Retorna, Se, Tente, Var, VarMultiplo } from '../declaracoes';
|
|
6
6
|
import { DeleguaFuncao, DeleguaModulo } from '../estruturas';
|
|
7
7
|
import { AcessoIndiceVariavel, Agrupamento, Atribuir, Construto, FimPara, FormatacaoEscrita, Literal, Logico, Super, TipoDe, Unario, Variavel, Vetor } from '../construtos';
|
|
8
8
|
import { ErroInterpretador } from '../interfaces/erros/erro-interpretador';
|
|
@@ -43,19 +43,26 @@ export declare class InterpretadorBase implements InterpretadorInterface {
|
|
|
43
43
|
* @returns Promise com o resultado da leitura.
|
|
44
44
|
*/
|
|
45
45
|
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
46
|
+
/**
|
|
47
|
+
* Execução da leitura de valores da entrada configurada no
|
|
48
|
+
* início da aplicação.
|
|
49
|
+
* @param expressao Expressão do tipo `LeiaMultiplo`.
|
|
50
|
+
* @returns Promise com o resultado da leitura.
|
|
51
|
+
*/
|
|
52
|
+
visitarExpressaoLeiaMultiplo(expressao: LeiaMultiplo): Promise<any>;
|
|
46
53
|
/**
|
|
47
54
|
* Retira a interpolação de um texto.
|
|
48
55
|
* @param {texto} texto O texto
|
|
49
56
|
* @param {any[]} variaveis A lista de variaveis interpoladas
|
|
50
57
|
* @returns O texto com o valor das variaveis.
|
|
51
58
|
*/
|
|
52
|
-
|
|
59
|
+
protected retirarInterpolacao(texto: string, variaveis: any[]): string;
|
|
53
60
|
/**
|
|
54
|
-
*
|
|
61
|
+
* Resolve todas as interpolações em um texto.
|
|
55
62
|
* @param {texto} textoOriginal O texto original com as variáveis interpoladas.
|
|
56
63
|
* @returns Uma lista de variáveis interpoladas.
|
|
57
64
|
*/
|
|
58
|
-
|
|
65
|
+
protected resolverInterpolacoes(textoOriginal: string, linha: number): Promise<any[]>;
|
|
59
66
|
visitarExpressaoLiteral(expressao: Literal): Promise<any>;
|
|
60
67
|
visitarExpressaoAgrupamento(expressao: Agrupamento): Promise<any>;
|
|
61
68
|
eVerdadeiro(objeto: any): boolean;
|
|
@@ -133,19 +140,19 @@ export declare class InterpretadorBase implements InterpretadorInterface {
|
|
|
133
140
|
*/
|
|
134
141
|
executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
|
|
135
142
|
visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
|
|
136
|
-
protected
|
|
143
|
+
protected avaliacaoDeclaracaoVarOuConst(declaracao: Const | ConstMultiplo | Var | VarMultiplo): Promise<any>;
|
|
137
144
|
/**
|
|
138
|
-
* Executa expressão de definição de
|
|
139
|
-
* @param declaracao A declaração
|
|
145
|
+
* Executa expressão de definição de constante.
|
|
146
|
+
* @param declaracao A declaração `Const`.
|
|
140
147
|
* @returns Sempre retorna nulo.
|
|
141
148
|
*/
|
|
142
|
-
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
|
|
143
|
-
/**
|
|
144
|
-
* Executa expressão de definição de constante.
|
|
145
|
-
* @param declaracao A declaração Const
|
|
146
|
-
* @returns Sempre retorna nulo.
|
|
147
|
-
*/
|
|
148
149
|
visitarDeclaracaoConst(declaracao: Const): Promise<any>;
|
|
150
|
+
/**
|
|
151
|
+
* Executa expressão de definição de múltiplas constantes.
|
|
152
|
+
* @param declaracao A declaração `ConstMultiplo`.
|
|
153
|
+
* @returns Sempre retorna nulo.
|
|
154
|
+
*/
|
|
155
|
+
visitarDeclaracaoConstMultiplo(declaracao: ConstMultiplo): Promise<any>;
|
|
149
156
|
visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
|
|
150
157
|
visitarExpressaoSustar(declaracao?: any): SustarQuebra;
|
|
151
158
|
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
@@ -170,6 +177,18 @@ export declare class InterpretadorBase implements InterpretadorInterface {
|
|
|
170
177
|
visitarExpressaoDicionario(expressao: any): Promise<any>;
|
|
171
178
|
visitarExpressaoVetor(expressao: Vetor): Promise<any>;
|
|
172
179
|
visitarExpressaoSuper(expressao: Super): any;
|
|
180
|
+
/**
|
|
181
|
+
* Executa expressão de definição de variável.
|
|
182
|
+
* @param declaracao A declaração Var
|
|
183
|
+
* @returns Sempre retorna nulo.
|
|
184
|
+
*/
|
|
185
|
+
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
|
|
186
|
+
/**
|
|
187
|
+
* Executa expressão de definição de múltiplas variáveis.
|
|
188
|
+
* @param declaracao A declaração `VarMultiplo`.
|
|
189
|
+
* @returns Sempre retorna nulo.
|
|
190
|
+
*/
|
|
191
|
+
visitarDeclaracaoVarMultiplo(declaracao: VarMultiplo): Promise<any>;
|
|
173
192
|
paraTexto(objeto: any): any;
|
|
174
193
|
/**
|
|
175
194
|
* Efetivamente executa uma declaração.
|
|
@@ -96,13 +96,25 @@ class InterpretadorBase {
|
|
|
96
96
|
resolucao(resposta);
|
|
97
97
|
}));
|
|
98
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Execução da leitura de valores da entrada configurada no
|
|
101
|
+
* início da aplicação.
|
|
102
|
+
* @param expressao Expressão do tipo `LeiaMultiplo`.
|
|
103
|
+
* @returns Promise com o resultado da leitura.
|
|
104
|
+
*/
|
|
105
|
+
async visitarExpressaoLeiaMultiplo(expressao) {
|
|
106
|
+
const mensagem = expressao.argumentos && expressao.argumentos[0] ? expressao.argumentos[0].valor : '> ';
|
|
107
|
+
return new Promise((resolucao) => this.interfaceEntradaSaida.question(mensagem, (resposta) => {
|
|
108
|
+
resolucao(String(resposta).split(/(\s+)/).filter(r => !/(\s+)/.test(r)));
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
99
111
|
/**
|
|
100
112
|
* Retira a interpolação de um texto.
|
|
101
113
|
* @param {texto} texto O texto
|
|
102
114
|
* @param {any[]} variaveis A lista de variaveis interpoladas
|
|
103
115
|
* @returns O texto com o valor das variaveis.
|
|
104
116
|
*/
|
|
105
|
-
|
|
117
|
+
retirarInterpolacao(texto, variaveis) {
|
|
106
118
|
let textoFinal = texto;
|
|
107
119
|
variaveis.forEach((elemento) => {
|
|
108
120
|
var _a, _b, _c;
|
|
@@ -116,11 +128,11 @@ class InterpretadorBase {
|
|
|
116
128
|
return textoFinal;
|
|
117
129
|
}
|
|
118
130
|
/**
|
|
119
|
-
*
|
|
131
|
+
* Resolve todas as interpolações em um texto.
|
|
120
132
|
* @param {texto} textoOriginal O texto original com as variáveis interpoladas.
|
|
121
133
|
* @returns Uma lista de variáveis interpoladas.
|
|
122
134
|
*/
|
|
123
|
-
async
|
|
135
|
+
async resolverInterpolacoes(textoOriginal, linha) {
|
|
124
136
|
const variaveis = textoOriginal.match(this.regexInterpolacao);
|
|
125
137
|
let resultadosAvaliacaoSintatica = variaveis.map((s) => {
|
|
126
138
|
const nomeVariavel = s.replace(/[\$\{\}]*/gm, '');
|
|
@@ -131,7 +143,7 @@ class InterpretadorBase {
|
|
|
131
143
|
resultadoMicroAvaliadorSintatico
|
|
132
144
|
};
|
|
133
145
|
});
|
|
134
|
-
//TODO
|
|
146
|
+
// TODO: Verificar erros do `resultadosAvaliacaoSintatica`.
|
|
135
147
|
const resolucoesPromises = await Promise.all(resultadosAvaliacaoSintatica
|
|
136
148
|
.flatMap(r => r.resultadoMicroAvaliadorSintatico.declaracoes)
|
|
137
149
|
.map(d => this.avaliar(d)));
|
|
@@ -142,7 +154,7 @@ class InterpretadorBase {
|
|
|
142
154
|
}
|
|
143
155
|
async visitarExpressaoLiteral(expressao) {
|
|
144
156
|
if (this.regexInterpolacao.test(expressao.valor)) {
|
|
145
|
-
const variaveis = await this.
|
|
157
|
+
const variaveis = await this.resolverInterpolacoes(expressao.valor, expressao.linha);
|
|
146
158
|
return this.retirarInterpolacao(expressao.valor, variaveis);
|
|
147
159
|
}
|
|
148
160
|
return expressao.valor;
|
|
@@ -285,7 +297,7 @@ class InterpretadorBase {
|
|
|
285
297
|
return Number(valorEsquerdo) - Number(valorDireito);
|
|
286
298
|
case delegua_1.default.ADICAO:
|
|
287
299
|
case delegua_1.default.MAIS_IGUAL:
|
|
288
|
-
if (
|
|
300
|
+
if (['número', 'inteiro'].includes(tipoEsquerdo) && ['número', 'inteiro'].includes(tipoDireito)) {
|
|
289
301
|
return Number(valorEsquerdo) + Number(valorDireito);
|
|
290
302
|
}
|
|
291
303
|
else {
|
|
@@ -784,7 +796,7 @@ class InterpretadorBase {
|
|
|
784
796
|
async visitarExpressaoBloco(declaracao) {
|
|
785
797
|
return await this.executarBloco(declaracao.declaracoes);
|
|
786
798
|
}
|
|
787
|
-
async
|
|
799
|
+
async avaliacaoDeclaracaoVarOuConst(declaracao) {
|
|
788
800
|
let valorOuOutraVariavel = null;
|
|
789
801
|
if (declaracao.inicializador !== null) {
|
|
790
802
|
valorOuOutraVariavel = await this.avaliar(declaracao.inicializador);
|
|
@@ -798,31 +810,33 @@ class InterpretadorBase {
|
|
|
798
810
|
return valorFinal;
|
|
799
811
|
}
|
|
800
812
|
/**
|
|
801
|
-
* Executa expressão de definição de
|
|
802
|
-
* @param declaracao A declaração
|
|
813
|
+
* Executa expressão de definição de constante.
|
|
814
|
+
* @param declaracao A declaração `Const`.
|
|
803
815
|
* @returns Sempre retorna nulo.
|
|
804
816
|
*/
|
|
805
|
-
async
|
|
806
|
-
const valorFinal = await this.
|
|
817
|
+
async visitarDeclaracaoConst(declaracao) {
|
|
818
|
+
const valorFinal = await this.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
807
819
|
let subtipo;
|
|
808
820
|
if (declaracao.tipo !== undefined) {
|
|
809
821
|
subtipo = declaracao.tipo;
|
|
810
822
|
}
|
|
811
|
-
this.pilhaEscoposExecucao.
|
|
823
|
+
this.pilhaEscoposExecucao.definirConstante(declaracao.simbolo.lexema, valorFinal, subtipo);
|
|
812
824
|
return null;
|
|
813
825
|
}
|
|
814
826
|
/**
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
async
|
|
820
|
-
const
|
|
821
|
-
let
|
|
822
|
-
|
|
823
|
-
|
|
827
|
+
* Executa expressão de definição de múltiplas constantes.
|
|
828
|
+
* @param declaracao A declaração `ConstMultiplo`.
|
|
829
|
+
* @returns Sempre retorna nulo.
|
|
830
|
+
*/
|
|
831
|
+
async visitarDeclaracaoConstMultiplo(declaracao) {
|
|
832
|
+
const valoresFinais = await this.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
833
|
+
for (let [indice, valor] of valoresFinais.entries()) {
|
|
834
|
+
let subtipo;
|
|
835
|
+
if (declaracao.tipo !== undefined) {
|
|
836
|
+
subtipo = declaracao.tipo;
|
|
837
|
+
}
|
|
838
|
+
this.pilhaEscoposExecucao.definirConstante(declaracao.simbolos[indice].lexema, valor, subtipo);
|
|
824
839
|
}
|
|
825
|
-
this.pilhaEscoposExecucao.definirConstante(declaracao.simbolo.lexema, valorFinal, subtipo);
|
|
826
840
|
return null;
|
|
827
841
|
}
|
|
828
842
|
visitarExpressaoContinua(declaracao) {
|
|
@@ -1054,6 +1068,36 @@ class InterpretadorBase {
|
|
|
1054
1068
|
metodo.instancia = objeto.valor;
|
|
1055
1069
|
return metodo;
|
|
1056
1070
|
}
|
|
1071
|
+
/**
|
|
1072
|
+
* Executa expressão de definição de variável.
|
|
1073
|
+
* @param declaracao A declaração Var
|
|
1074
|
+
* @returns Sempre retorna nulo.
|
|
1075
|
+
*/
|
|
1076
|
+
async visitarDeclaracaoVar(declaracao) {
|
|
1077
|
+
const valorFinal = await this.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
1078
|
+
let subtipo;
|
|
1079
|
+
if (declaracao.tipo !== undefined) {
|
|
1080
|
+
subtipo = declaracao.tipo;
|
|
1081
|
+
}
|
|
1082
|
+
this.pilhaEscoposExecucao.definirVariavel(declaracao.simbolo.lexema, valorFinal, subtipo);
|
|
1083
|
+
return null;
|
|
1084
|
+
}
|
|
1085
|
+
/**
|
|
1086
|
+
* Executa expressão de definição de múltiplas variáveis.
|
|
1087
|
+
* @param declaracao A declaração `VarMultiplo`.
|
|
1088
|
+
* @returns Sempre retorna nulo.
|
|
1089
|
+
*/
|
|
1090
|
+
async visitarDeclaracaoVarMultiplo(declaracao) {
|
|
1091
|
+
const valoresFinais = await this.avaliacaoDeclaracaoVarOuConst(declaracao);
|
|
1092
|
+
for (let [indice, valor] of valoresFinais.entries()) {
|
|
1093
|
+
let subtipo;
|
|
1094
|
+
if (declaracao.tipo !== undefined) {
|
|
1095
|
+
subtipo = declaracao.tipo;
|
|
1096
|
+
}
|
|
1097
|
+
this.pilhaEscoposExecucao.definirVariavel(declaracao.simbolos[indice].lexema, valor, subtipo);
|
|
1098
|
+
}
|
|
1099
|
+
return null;
|
|
1100
|
+
}
|
|
1057
1101
|
paraTexto(objeto) {
|
|
1058
1102
|
if (objeto === null || objeto === undefined)
|
|
1059
1103
|
return 'nulo';
|