tree-sitter / tree-sitter-typescript

TypeScript grammar for tree-sitter
MIT License
361 stars 108 forks source link

"Template literal types" and "Mapped type 'as' clauses" #138

Closed resolritter closed 3 years ago

resolritter commented 3 years ago

:exclamation: on top of #135 for convenience's sake; there's no apparent code dependency between them. I can try to split the relevant commits for #136 (named implement template literal types) and #137 (named implement "mapped type 'as' clasues") upon demand.

closes #137

closes #136

danielnehrig commented 3 years ago

looking forward to this merge

philipfeldmann commented 3 years ago

Would be awesome if this got merged.

pokey commented 3 years ago

Just wanted to check in to see if there was a chance of this one getting merged soon? The parse tree gets pretty messed up without it 😅

mjambon commented 3 years ago

@resolritter a merge conflict is reported by github in common/define-grammar.js. Hopefully it's not a big deal. Let us know if you need someone to take over.

resolritter commented 3 years ago

In the past I was discouraged to work on the grammars because I saw plenty of PRs rot away without being merged. e.g. https://github.com/tree-sitter/tree-sitter-rust/pulls has plenty of those. Nowadays I'm too busy to keep rebasing the PRs constantly without any prospect of having them be merged. I suppose this repository has a better situation than the other grammars since @mjambon takes care of them.

I'll should have room to revisit this on the weekend or something, but if someone wants to take over, feel free.

resolritter commented 3 years ago

@mjambon The PR was rebased and should be ready. It might be worthwhile taking a look at https://github.com/tree-sitter/tree-sitter-typescript/pull/138#pullrequestreview-754176173 because I'm not familiar with the (string_fragment).

mjambon commented 3 years ago

@resolritter a string_fragment node represents string contents, which used to be hidden. You did the right thing.

danielnehrig commented 3 years ago

:rocket: