Skip to content

Commit 23f3dc4

Browse files
committed
Fixed issue 19 - incorrect method declarations for listener.
1 parent ff09417 commit 23f3dc4

File tree

3 files changed

+79
-77
lines changed

3 files changed

+79
-77
lines changed

package-lock.json

Lines changed: 72 additions & 74 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@
5353
"@types/commander": "^2.12.2",
5454
"@types/ejs": "^2.6.0",
5555
"@types/lodash": "^4.14.116",
56-
"@types/node": "^10.7.1",
56+
"@types/node": "^10.11.3",
5757
"tslint": "^5.11.0",
58-
"typescript": "^3.0.1"
58+
"typescript": "^3.1.1"
5959
}
6060
}

src/antlr-core/antlr-compiler.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,18 @@ export class AntlrCompiler {
3737
return dest;
3838
}
3939

40+
capitalize = (s: string) => {
41+
return s.charAt(0).toUpperCase() + s.slice(1);
42+
}
43+
4044
compileTypeScriptListener(grammar: string, parser: any) {
4145
const className = `${grammar}Listener`;
4246
const dest = `${this.outputDirectory}/${className}.d.ts`;
4347
const template = fs.readFileSync(`${__dirname}/templates/listener.d.ts.ejs`).toString();
4448
const map = parserUtil.ruleToContextTypeMap(parser);
4549

4650
const methods = _.flatten(_.map(parser.ruleNames, (rule) => {
47-
return [`${rule}Enter(ctx: ${map.get(rule)}): void;`, `${rule}Exit(ctx: ${map.get(rule)}): void;`];
51+
return [`enter${this.capitalize(rule)}(ctx: ${map.get(rule)}): void;`, `exit${this.capitalize(rule)}(ctx: ${map.get(rule)}): void;`];
4852
}));
4953

5054
const imports = _.flatten(_.map(parser.ruleNames, (rule) => {

0 commit comments

Comments
 (0)