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

no_parens_one_expr #122

Merged
merged 18 commits into from
May 6, 2015
Merged

Conversation

KronicDeth
Copy link
Owner

Resolves #60

Test prior to adding matchedExpression as valid argument.
When a variable is the identifier only the variable name should be used
as the quoted identifier as the nil argument in a variable quoted form
needs to be replaced by the quotedArguments for the
matchedCallOperation.
`decimalFloat decimalFloat` is invalid in both Elixir and
intellij-elixir, but other arguments are allowed in intellij-elixir.
Use Run Before settings in configuration instead of having to manually
start intellij_elixir release.
Complete no_parens_one_expr porting.  Atom keywords, char list lines,
and string lines can now be used as relative identifiers, in addition to
the operators and identifiers previously supported.  Parentheses can be
used for normal function calls in addition to dot calls.

In order to prevent `one + two` being parsed as `one(+two)`, a
SIGNIFICANT_WHITE_SPACE token had to be introduced after DUAL_OPERATOR.
This is similar to :elixir_tokenizer.handle_space_sensitive_tokens/4.

parenthesesArguments are allowed to repeat once to handle
`def unquote(variable)(arguments)`.
matchedCallOperation was split into matchedQualifiedCallOperation and
matchedUnqualifiedCallOperation.
@KronicDeth KronicDeth self-assigned this May 3, 2015
@KronicDeth KronicDeth added this to the v1.0.0 milestone May 3, 2015
KronicDeth added 7 commits May 4, 2015 08:28
Labelling it just "" made it really hard to debug.
Lexer generates CALL between identifier and `(`, so for both uses of
matchedCallArguments, CALL must be consumed before OPENING_PARENTHESIS.
Adding CALL before parenthesesArguments in matchedCallArguments fixed
the qualified and unqualified call testData.
Parsing is slightly farther.  It gets up to the first `do`.
@KronicDeth KronicDeth merged commit bbac977 into master May 6, 2015
KronicDeth added a commit that referenced this pull request May 6, 2015
KronicDeth added a commit that referenced this pull request May 6, 2015
@KronicDeth KronicDeth deleted the feature/60/no-parentheses-one-expression branch May 6, 2015 02:56
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.

No Parentheses One Expression
1 participant