-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parser rewrite #274
Merged
Merged
Parser rewrite #274
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Merged
* Initial start of Luau parsers * Fix compilation * Parse compound assignments * Parse context sensitive keywords * Fix parse continue last stmt * Make "luau" and "roblox" feature flag interchangable * Parse luau binary numbers and num separators * Add ->, |, &, ? to Luau lexer * Parse generic types and type declaration * Function and Table type parsing * Parse type specifiers in function body * Update snapshots for associativity We fix the associativity of type union / intersection. They should be left associative, when we originally had them as right associative * Parse if expressions and type assertions * Parse generic type lists and type packs * Fix compilation * Parse varargs, return type packs, and indexed type info * Update snapshot for associativitiy * Update snapshot for variadic vs variadicpack - i don't know why variadicpack was added? * Allow generic type pack annotations on varargs * Update snapshots - turns out we had some bugs here! * Review comments * Add test case for intersection precedence Fixes #286 * Add test case for variadic types in a generic type Fixes #285 * Add test case for generic types with no parameters of a module Fixes #275 * Update snapshots * Reformat parsers * Fix roblox parser fail test cases * Construct error token in generic declaration no name * Error generic types come before generic type packs * Accept fail case snapshots * Don't throw error on lexer moved * Add error when function return type uses `->` * Improve error message for generic default not type pack and add test * Do not allow single vararg wrapped in parens in func type parsing * Recover from no right brace in type table * Ignore extra nodes in snapshot yamls * Cleanup rewrite todos * Interpolated string support * Add test case for #290 * update * Apply suggestions from code review Co-authored-by: Chris Chang <[email protected]> * Simplify interpolated string parser --------- Co-authored-by: Kampfkarren <[email protected]> Co-authored-by: Chris Chang <[email protected]>
…parser-rewrite
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Won't be merged into main until I get help with other parsers.