@designliquido/delegua 0.33.10 → 0.33.11
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/analisador-semantico/dialetos/index.d.ts +0 -1
- package/analisador-semantico/dialetos/index.d.ts.map +1 -1
- package/analisador-semantico/dialetos/index.js +0 -1
- package/analisador-semantico/dialetos/index.js.map +1 -1
- package/avaliador-sintatico/dialetos/index.d.ts +0 -1
- package/avaliador-sintatico/dialetos/index.d.ts.map +1 -1
- package/avaliador-sintatico/dialetos/index.js +0 -1
- package/avaliador-sintatico/dialetos/index.js.map +1 -1
- package/bin/package.json +2 -4
- package/interfaces/index.d.ts +0 -1
- package/interfaces/index.d.ts.map +1 -1
- package/interfaces/index.js +0 -1
- package/interfaces/index.js.map +1 -1
- package/interpretador/dialetos/index.d.ts +0 -1
- package/interpretador/dialetos/index.d.ts.map +1 -1
- package/interpretador/dialetos/index.js +0 -1
- package/interpretador/dialetos/index.js.map +1 -1
- package/lexador/dialetos/index.d.ts +0 -1
- package/lexador/dialetos/index.d.ts.map +1 -1
- package/lexador/dialetos/index.js +0 -1
- package/lexador/dialetos/index.js.map +1 -1
- package/package.json +2 -4
- package/analisador-semantico/dialetos/analisador-semantico-birl.d.ts +0 -29
- package/analisador-semantico/dialetos/analisador-semantico-birl.d.ts.map +0 -1
- package/analisador-semantico/dialetos/analisador-semantico-birl.js +0 -88
- package/analisador-semantico/dialetos/analisador-semantico-birl.js.map +0 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts +0 -54
- package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.d.ts.map +0 -1
- package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +0 -674
- package/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +0 -1
- package/interfaces/dialetos/index.d.ts +0 -2
- package/interfaces/dialetos/index.d.ts.map +0 -1
- package/interfaces/dialetos/index.js +0 -18
- package/interfaces/dialetos/index.js.map +0 -1
- package/interfaces/dialetos/interpretador-birl-interface.d.ts +0 -12
- package/interfaces/dialetos/interpretador-birl-interface.d.ts.map +0 -1
- package/interfaces/dialetos/interpretador-birl-interface.js +0 -3
- package/interfaces/dialetos/interpretador-birl-interface.js.map +0 -1
- package/interfaces/interpretador-interface-birl.d.ts +0 -23
- package/interfaces/interpretador-interface-birl.d.ts.map +0 -1
- package/interfaces/interpretador-interface-birl.js +0 -3
- package/interfaces/interpretador-interface-birl.js.map +0 -1
- package/interpretador/dialetos/birl/comum.d.ts +0 -17
- package/interpretador/dialetos/birl/comum.d.ts.map +0 -1
- package/interpretador/dialetos/birl/comum.js +0 -271
- package/interpretador/dialetos/birl/comum.js.map +0 -1
- package/interpretador/dialetos/birl/index.d.ts +0 -3
- package/interpretador/dialetos/birl/index.d.ts.map +0 -1
- package/interpretador/dialetos/birl/index.js +0 -19
- package/interpretador/dialetos/birl/index.js.map +0 -1
- package/interpretador/dialetos/birl/interpretador-birl-com-depuracao.d.ts +0 -27
- package/interpretador/dialetos/birl/interpretador-birl-com-depuracao.d.ts.map +0 -1
- package/interpretador/dialetos/birl/interpretador-birl-com-depuracao.js +0 -68
- package/interpretador/dialetos/birl/interpretador-birl-com-depuracao.js.map +0 -1
- package/interpretador/dialetos/birl/interpretador-birl.d.ts +0 -158
- package/interpretador/dialetos/birl/interpretador-birl.d.ts.map +0 -1
- package/interpretador/dialetos/birl/interpretador-birl.js +0 -702
- package/interpretador/dialetos/birl/interpretador-birl.js.map +0 -1
- package/lexador/dialetos/lexador-birl.d.ts +0 -14
- package/lexador/dialetos/lexador-birl.d.ts.map +0 -1
- package/lexador/dialetos/lexador-birl.js +0 -240
- package/lexador/dialetos/lexador-birl.js.map +0 -1
- package/lexador/dialetos/palavras-reservadas/birl.d.ts +0 -46
- package/lexador/dialetos/palavras-reservadas/birl.d.ts.map +0 -1
- package/lexador/dialetos/palavras-reservadas/birl.js +0 -65
- package/lexador/dialetos/palavras-reservadas/birl.js.map +0 -1
- package/lexador/dialetos/palavras-reservadas/index.d.ts +0 -2
- package/lexador/dialetos/palavras-reservadas/index.d.ts.map +0 -1
- package/lexador/dialetos/palavras-reservadas/index.js +0 -6
- package/lexador/dialetos/palavras-reservadas/index.js.map +0 -1
- package/tipos-de-simbolos/birl.d.ts +0 -91
- package/tipos-de-simbolos/birl.d.ts.map +0 -1
- package/tipos-de-simbolos/birl.js +0 -98
- package/tipos-de-simbolos/birl.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
|
|
@@ -14,6 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./analisador-semantico-birl"), exports);
|
|
18
17
|
__exportStar(require("./analisador-semantico-mapler"), exports);
|
|
19
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,WAAW,CAAC"}
|
|
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./avaliador-sintatico-birl"), exports);
|
|
18
17
|
__exportStar(require("./avaliador-sintatico-egua-classico"), exports);
|
|
19
18
|
__exportStar(require("./avaliador-sintatico-pitugues"), exports);
|
|
20
19
|
__exportStar(require("./avaliador-sintatico-mapler"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAoD;AACpD,iEAA+C;AAC/C,+DAA6C;AAC7C,qEAAmD;AAEnD,4CAA0B"}
|
package/bin/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua",
|
|
3
|
-
"version": "0.33.
|
|
3
|
+
"version": "0.33.10",
|
|
4
4
|
"description": "Linguagem de programação simples e moderna usando português estruturado, com suporte a múltiplos dialetos",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -21,14 +21,12 @@
|
|
|
21
21
|
"url": "git+https://github.com/DesignLiquido/delegua.git"
|
|
22
22
|
},
|
|
23
23
|
"keywords": [
|
|
24
|
-
"birl",
|
|
25
24
|
"egua",
|
|
26
25
|
"pitugues",
|
|
27
26
|
"delegua",
|
|
28
27
|
"mapler",
|
|
29
28
|
"português",
|
|
30
|
-
"portugol"
|
|
31
|
-
"visualg"
|
|
29
|
+
"portugol"
|
|
32
30
|
],
|
|
33
31
|
"author": "Leonel Sanches da Silva",
|
|
34
32
|
"contributors": [
|
package/interfaces/index.d.ts
CHANGED
|
@@ -11,7 +11,6 @@ export * from './tradutor-interface';
|
|
|
11
11
|
export * from './variavel-interface';
|
|
12
12
|
export * from './visitante-comum-interface';
|
|
13
13
|
export * from './construtos';
|
|
14
|
-
export * from './dialetos';
|
|
15
14
|
export * from './erros';
|
|
16
15
|
export * from './retornos';
|
|
17
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uCAAuC,CAAC;AACtD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../fontes/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uCAAuC,CAAC;AACtD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
package/interfaces/index.js
CHANGED
|
@@ -27,7 +27,6 @@ __exportStar(require("./tradutor-interface"), exports);
|
|
|
27
27
|
__exportStar(require("./variavel-interface"), exports);
|
|
28
28
|
__exportStar(require("./visitante-comum-interface"), exports);
|
|
29
29
|
__exportStar(require("./construtos"), exports);
|
|
30
|
-
__exportStar(require("./dialetos"), exports);
|
|
31
30
|
__exportStar(require("./erros"), exports);
|
|
32
31
|
__exportStar(require("./retornos"), exports);
|
|
33
32
|
//# sourceMappingURL=index.js.map
|
package/interfaces/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,0EAAwD;AACxD,4DAA0C;AAC1C,sDAAoC;AACpC,wDAAsC;AACtC,oDAAkC;AAClC,yDAAuC;AACvC,wEAAsD;AACtD,sDAAoC;AACpC,uDAAqC;AACrC,uDAAqC;AACrC,8DAA4C;AAE5C,+CAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../fontes/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,0EAAwD;AACxD,4DAA0C;AAC1C,sDAAoC;AACpC,wDAAsC;AACtC,oDAAkC;AAClC,yDAAuC;AACvC,wEAAsD;AACtD,sDAAoC;AACpC,uDAAqC;AACrC,uDAAqC;AACrC,8DAA4C;AAE5C,+CAA6B;AAC7B,0CAAwB;AACxB,6CAA2B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/interpretador/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/interpretador/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC"}
|
|
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./birl"), exports);
|
|
18
17
|
__exportStar(require("./egua-classico"), exports);
|
|
19
18
|
__exportStar(require("./mapler"), exports);
|
|
20
19
|
__exportStar(require("./portugol-ipt"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/interpretador/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/interpretador/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,2CAAyB;AACzB,iDAA+B;AAC/B,4CAA0B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/lexador/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../fontes/lexador/dialetos/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
|
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./lexador-birl"), exports);
|
|
18
17
|
__exportStar(require("./lexador-egua-classico"), exports);
|
|
19
18
|
__exportStar(require("./lexador-pitugues"), exports);
|
|
20
19
|
__exportStar(require("./lexador-guarani"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/lexador/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/lexador/dialetos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,qDAAmC;AACnC,oDAAkC;AAClC,mDAAiC;AACjC,oDAAkC;AAClC,yDAAuC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@designliquido/delegua",
|
|
3
|
-
"version": "0.33.
|
|
3
|
+
"version": "0.33.11",
|
|
4
4
|
"description": "Linguagem de programação simples e moderna usando português estruturado, com suporte a múltiplos dialetos",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -21,14 +21,12 @@
|
|
|
21
21
|
"url": "git+https://github.com/DesignLiquido/delegua.git"
|
|
22
22
|
},
|
|
23
23
|
"keywords": [
|
|
24
|
-
"birl",
|
|
25
24
|
"egua",
|
|
26
25
|
"pitugues",
|
|
27
26
|
"delegua",
|
|
28
27
|
"mapler",
|
|
29
28
|
"português",
|
|
30
|
-
"portugol"
|
|
31
|
-
"visualg"
|
|
29
|
+
"portugol"
|
|
32
30
|
],
|
|
33
31
|
"author": "Leonel Sanches da Silva",
|
|
34
32
|
"contributors": [
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Atribuir } from '../../construtos';
|
|
2
|
-
import { Declaracao, Expressao, Leia, Retorna, Var } from '../../declaracoes';
|
|
3
|
-
import { DiagnosticoAnalisadorSemantico } from '../../interfaces/erros';
|
|
4
|
-
import { RetornoAnalisadorSemantico } from '../../interfaces/retornos/retorno-analisador-semantico';
|
|
5
|
-
import { RetornoQuebra } from '../../quebras';
|
|
6
|
-
import { AnalisadorSemanticoBase } from '../analisador-semantico-base';
|
|
7
|
-
import { PilhaVariaveis } from '../pilha-variaveis';
|
|
8
|
-
interface VariavelHipoteticaBirlInterface {
|
|
9
|
-
tipo: 'texto' | 'número' | 'longo' | 'vetor' | 'dicionário' | 'nulo' | 'lógico' | 'função' | 'símbolo' | 'objeto' | 'módulo';
|
|
10
|
-
subtipo?: 'texto' | 'número' | 'longo' | 'lógico';
|
|
11
|
-
imutavel: boolean;
|
|
12
|
-
}
|
|
13
|
-
export declare class AnalisadorSemanticoBirl extends AnalisadorSemanticoBase {
|
|
14
|
-
pilhaVariaveis: PilhaVariaveis;
|
|
15
|
-
variaveis: {
|
|
16
|
-
[nomeVariavel: string]: VariavelHipoteticaBirlInterface;
|
|
17
|
-
};
|
|
18
|
-
atual: number;
|
|
19
|
-
diagnosticos: DiagnosticoAnalisadorSemantico[];
|
|
20
|
-
constructor();
|
|
21
|
-
visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<void>;
|
|
22
|
-
visitarDeclaracaoDeExpressao(declaracao: Expressao): any;
|
|
23
|
-
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
|
|
24
|
-
visitarExpressaoLeia(expressao: Leia): Promise<void>;
|
|
25
|
-
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
26
|
-
analisar(declaracoes: Declaracao[]): RetornoAnalisadorSemantico;
|
|
27
|
-
}
|
|
28
|
-
export {};
|
|
29
|
-
//# sourceMappingURL=analisador-semantico-birl.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico-birl.d.ts","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/analisador-semantico-birl.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EASX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAQH,UAAU,EAKV,SAAS,EAIT,IAAI,EAIJ,OAAO,EAIP,GAAG,EAEN,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,8BAA8B,EAAyB,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,EAAmB,aAAa,EAAgB,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,UAAU,+BAA+B;IACrC,IAAI,EACE,OAAO,GACP,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,GACZ,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,QAAQ,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,uBAAwB,SAAQ,uBAAuB;IAChE,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,+BAA+B,CAAA;KAAE,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,8BAA8B,EAAE,CAAC;;IAU/C,4BAA4B,CAAC,SAAS,EAAE,QAAQ;IAwBhD,4BAA4B,CAAC,UAAU,EAAE,SAAS;IAIlD,oBAAoB,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IASnD,oBAAoB,CAAC,SAAS,EAAE,IAAI;IA8BpC,wBAAwB,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAIrE,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,0BAA0B;CAclE"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AnalisadorSemanticoBirl = void 0;
|
|
4
|
-
const erros_1 = require("../../interfaces/erros");
|
|
5
|
-
const analisador_semantico_base_1 = require("../analisador-semantico-base");
|
|
6
|
-
const pilha_variaveis_1 = require("../pilha-variaveis");
|
|
7
|
-
class AnalisadorSemanticoBirl extends analisador_semantico_base_1.AnalisadorSemanticoBase {
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
this.pilhaVariaveis = new pilha_variaveis_1.PilhaVariaveis();
|
|
11
|
-
this.variaveis = {};
|
|
12
|
-
this.atual = 0;
|
|
13
|
-
this.diagnosticos = [];
|
|
14
|
-
}
|
|
15
|
-
visitarExpressaoDeAtribuicao(expressao) {
|
|
16
|
-
if (!this.variaveis.hasOwnProperty(expressao.simbolo.lexema)) {
|
|
17
|
-
this.diagnosticos.push({
|
|
18
|
-
simbolo: expressao.simbolo,
|
|
19
|
-
mensagem: `A variável ${expressao.simbolo.lexema} não foi declarada.`,
|
|
20
|
-
hashArquivo: expressao.hashArquivo,
|
|
21
|
-
linha: expressao.linha,
|
|
22
|
-
severidade: erros_1.DiagnosticoSeveridade.ERRO,
|
|
23
|
-
});
|
|
24
|
-
return Promise.resolve();
|
|
25
|
-
}
|
|
26
|
-
if (this.variaveis[expressao.simbolo.lexema].imutavel) {
|
|
27
|
-
this.diagnosticos.push({
|
|
28
|
-
simbolo: expressao.simbolo,
|
|
29
|
-
mensagem: `Constante ${expressao.simbolo.lexema} não pode ser modificada.`,
|
|
30
|
-
hashArquivo: expressao.hashArquivo,
|
|
31
|
-
linha: expressao.linha,
|
|
32
|
-
severidade: erros_1.DiagnosticoSeveridade.ERRO,
|
|
33
|
-
});
|
|
34
|
-
return Promise.resolve();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
visitarDeclaracaoDeExpressao(declaracao) {
|
|
38
|
-
return declaracao.expressao.aceitar(this);
|
|
39
|
-
}
|
|
40
|
-
visitarDeclaracaoVar(declaracao) {
|
|
41
|
-
this.variaveis[declaracao.simbolo.lexema] = {
|
|
42
|
-
imutavel: false,
|
|
43
|
-
tipo: 'número',
|
|
44
|
-
};
|
|
45
|
-
return Promise.resolve();
|
|
46
|
-
}
|
|
47
|
-
visitarExpressaoLeia(expressao) {
|
|
48
|
-
if (!this.variaveis.hasOwnProperty(expressao.argumentos[0].simbolo.lexema)) {
|
|
49
|
-
this.diagnosticos.push({
|
|
50
|
-
simbolo: expressao.argumentos[0].simbolo,
|
|
51
|
-
mensagem: `A variável ${expressao.argumentos[0].simbolo.lexema} não foi declarada.`,
|
|
52
|
-
hashArquivo: expressao.hashArquivo,
|
|
53
|
-
linha: expressao.linha,
|
|
54
|
-
severidade: erros_1.DiagnosticoSeveridade.ERRO,
|
|
55
|
-
});
|
|
56
|
-
return Promise.resolve();
|
|
57
|
-
}
|
|
58
|
-
const tipoVariavelExpressão = this.variaveis[expressao.argumentos[0].simbolo.lexema].tipo;
|
|
59
|
-
const tipoVariavelArgumento = expressao.argumentos[1].valor;
|
|
60
|
-
if (tipoVariavelExpressão !== tipoVariavelArgumento) {
|
|
61
|
-
this.diagnosticos.push({
|
|
62
|
-
simbolo: expressao.argumentos[0].simbolo,
|
|
63
|
-
mensagem: `A variável ${expressao.argumentos[0].simbolo.lexema} não é do tipo ${tipoVariavelArgumento}.`,
|
|
64
|
-
hashArquivo: expressao.hashArquivo,
|
|
65
|
-
linha: expressao.linha,
|
|
66
|
-
severidade: erros_1.DiagnosticoSeveridade.ERRO,
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
return Promise.resolve();
|
|
70
|
-
}
|
|
71
|
-
visitarExpressaoRetornar(declaracao) {
|
|
72
|
-
return Promise.resolve(null);
|
|
73
|
-
}
|
|
74
|
-
analisar(declaracoes) {
|
|
75
|
-
this.variaveis = {};
|
|
76
|
-
this.atual = 0;
|
|
77
|
-
this.diagnosticos = [];
|
|
78
|
-
while (this.atual < declaracoes.length) {
|
|
79
|
-
declaracoes[this.atual].aceitar(this);
|
|
80
|
-
this.atual++;
|
|
81
|
-
}
|
|
82
|
-
return {
|
|
83
|
-
diagnosticos: this.diagnosticos,
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
exports.AnalisadorSemanticoBirl = AnalisadorSemanticoBirl;
|
|
88
|
-
//# sourceMappingURL=analisador-semantico-birl.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analisador-semantico-birl.js","sourceRoot":"","sources":["../../../fontes/analisador-semantico/dialetos/analisador-semantico-birl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { Chamada, FuncaoConstruto } from '../../construtos';
|
|
2
|
-
import { Bloco, Continua, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, FuncaoDeclaracao, Leia, Para, Retorna, Se, Sustar, Var } from '../../declaracoes';
|
|
3
|
-
import { RetornoAvaliadorSintatico, RetornoLexador } from '../../interfaces/retornos';
|
|
4
|
-
import { AvaliadorSintaticoBase } from '../avaliador-sintatico-base';
|
|
5
|
-
import { Construto } from '../../construtos/construto';
|
|
6
|
-
import { ParametroInterface, SimboloInterface } from '../../interfaces';
|
|
7
|
-
/**
|
|
8
|
-
* Avaliador Sintático de BIRL
|
|
9
|
-
*/
|
|
10
|
-
export declare class AvaliadorSintaticoBirl extends AvaliadorSintaticoBase {
|
|
11
|
-
private validarEscopoPrograma;
|
|
12
|
-
tratarSimbolos(simbolos: Array<SimboloInterface>): string | void;
|
|
13
|
-
validarSegmentoHoraDoShow(): void;
|
|
14
|
-
validarSegmentoBirlFinal(): void;
|
|
15
|
-
primario(): Construto;
|
|
16
|
-
chamar(): Construto;
|
|
17
|
-
atribuir(): Construto;
|
|
18
|
-
blocoEscopo(): Declaracao[];
|
|
19
|
-
declaracaoEnquanto(): Enquanto;
|
|
20
|
-
declaracaoExpressao(): Expressao;
|
|
21
|
-
declaracaoPara(): Para;
|
|
22
|
-
declaracaoEscolha(): Escolha;
|
|
23
|
-
declaracaoEscreva(): Escreva;
|
|
24
|
-
declaracaoFazer(): Fazer;
|
|
25
|
-
declaracaoCaracteres(): Var[];
|
|
26
|
-
validarTipoDeclaracaoInteiro(): SimboloInterface;
|
|
27
|
-
declaracaoInteiros(): Var[];
|
|
28
|
-
declaracaoPontoFlutuante(): Var[];
|
|
29
|
-
declaracaoRetorna(): Retorna;
|
|
30
|
-
protected validaTipoDeclaracaoLeia(caracteres: string): string;
|
|
31
|
-
declaracaoLeia(): Leia;
|
|
32
|
-
protected consomeSeSenao(): {
|
|
33
|
-
condicaoSeSenao: any;
|
|
34
|
-
};
|
|
35
|
-
protected consomeSe(): {
|
|
36
|
-
simboloSe: SimboloInterface<string>;
|
|
37
|
-
condicaoSe: any;
|
|
38
|
-
};
|
|
39
|
-
consumeSenao(): void;
|
|
40
|
-
resolveCaminhoSe(): Bloco;
|
|
41
|
-
declaracaoSe(): Se;
|
|
42
|
-
resolveSimboloInterfaceParaTiposDadosInterface(simbolo: SimboloInterface): "numero" | "texto";
|
|
43
|
-
protected logicaComumParamentros(): ParametroInterface[];
|
|
44
|
-
corpoDaFuncao(tipo: string): FuncaoConstruto;
|
|
45
|
-
declacacaoEnquanto(): Enquanto;
|
|
46
|
-
declaracaoSustar(): Sustar;
|
|
47
|
-
declaracaoContinua(): Continua;
|
|
48
|
-
resolveTipo(tipo: string): SimboloInterface;
|
|
49
|
-
funcao(tipo: string): FuncaoDeclaracao;
|
|
50
|
-
declaracaoChamaFuncao(): Chamada;
|
|
51
|
-
resolverDeclaracaoForaDeBloco(): any;
|
|
52
|
-
analisar(retornoLexador: RetornoLexador<SimboloInterface>, hashArquivo: number): RetornoAvaliadorSintatico<Declaracao>;
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=avaliador-sintatico-birl.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avaliador-sintatico-birl.d.ts","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,OAAO,EAEP,eAAe,EAIlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,KAAK,EACL,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,OAAO,EACP,OAAO,EACP,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,EAAE,EACF,MAAM,EACN,GAAG,EACN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGxE;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,sBAAsB;IAC9D,OAAO,CAAC,qBAAqB;IAiB7B,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,MAAM,GAAG,IAAI;IAsChE,yBAAyB,IAAI,IAAI;IAOjC,wBAAwB,IAAI,IAAI;IAchC,QAAQ,IAAI,SAAS;IAuCrB,MAAM,IAAI,SAAS;IAcnB,QAAQ,IAAI,SAAS;IAsBrB,WAAW,IAAI,UAAU,EAAE;IAI3B,kBAAkB,IAAI,QAAQ;IA6B9B,mBAAmB,IAAI,SAAS;IAMhC,cAAc,IAAI,IAAI;IAyEtB,iBAAiB,IAAI,OAAO;IAI5B,iBAAiB,IAAI,OAAO;IA6B5B,eAAe,IAAI,KAAK;IAIxB,oBAAoB,IAAI,GAAG,EAAE;IAyD7B,4BAA4B,IAAI,gBAAgB;IAYhD,kBAAkB,IAAI,GAAG,EAAE;IA8C3B,wBAAwB,IAAI,GAAG,EAAE;IAkDjC,iBAAiB,IAAI,OAAO;IAY5B,SAAS,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAwB9D,cAAc,IAAI,IAAI;IAmCtB,SAAS,CAAC,cAAc;;;IAiBxB,SAAS,CAAC,SAAS;;;;IAmBnB,YAAY;IAOZ,gBAAgB;IA0BhB,YAAY,IAAI,EAAE;IA2ClB,8CAA8C,CAAC,OAAO,EAAE,gBAAgB;IAexE,SAAS,CAAC,sBAAsB,IAAI,kBAAkB,EAAE;IA+BxD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;IA6B5C,kBAAkB,IAAI,QAAQ;IAwB9B,gBAAgB,IAAI,MAAM;IAS1B,kBAAkB,IAAI,QAAQ;IAQ9B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAe3C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAkBtC,qBAAqB,IAAI,OAAO;IAuBhC,6BAA6B,IAAI,GAAG;IAoFpC,QAAQ,CACJ,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,MAAM,GACpB,yBAAyB,CAAC,UAAU,CAAC;CAa3C"}
|