Skip to content
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

Infix error recovery recovery #276

Merged
merged 4 commits into from
Mar 25, 2016
Merged

Infix error recovery recovery #276

merged 4 commits into from
Mar 25, 2016

Conversation

KronicDeth
Copy link
Owner

Changelog

  • Enhancements
    • Update to Grammar Kit 1.3.0.
  • Bug Fixes
    • Properly handle the Infix#rightOperand being null due to the Pratt Parser matching up through the operator and then ignoring the mismatched right operand, which leads to the Infix having only 2 elements: the left operand and the operator.
    • @doc and other module attributes appearing as the right operand of @type name :: will be ignored as it is common when adding a new type above pre-existing, documented functions.
    • Only error in Infix#leftOperand if there are not 2-3 children for Infix instead of a strict 3.
  • Incompatible Changes
    • Drop support for IntelliJ 14.0 because the parser generated by Grammar Kit 1.3.0 is not compatible with the OpenAPI libraries shipped in IntelliJ 14.0. Still compatible with 14.1 through 2016.1.

It can be null when the Pratt Parser recovers upto the operator and
there are only 2 children in the infix operation.
…erUsages

Fix #271

Occurs in the case of typing a `@type name ::` above a `@doc <HEREDOC>} and the
`@code @doc <HEREDOC>` is interpreted as the right-operand of `::`.
@KronicDeth KronicDeth self-assigned this Mar 25, 2016
@KronicDeth KronicDeth added this to the v2.3.0 milestone Mar 25, 2016
GrammarKit 1.3.0 doesn't generate a parser compatible with 14.0, so need
to drop 14.0 support to use new parse with proper @nullable on
Infix.rightOperand.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant