Interpret PrefixExpr of literal ints and floats into ASG #92
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.
This correctly parses and analyzes to ASG some expressions representing negative numeric literals. At the same time it does not incorrectly parse binary expressions such as
a-1.23
The following (should!) enter the ASG correctly:1.23;
-1.23;
- 1.23;
1;
-1;
- 1
;Some tests for all of the items above (and the binary expression) are included in this commit.
There are a few ugly things. But maybe they can be fixed later.
This PR also should make it easier to do another PR to handle variables with unary minus.
The access (API) to the ASG, tries to be backward compatible. Probably could used a simple redesign.
A new accessor
sign()
is added toIntLiteral
. For positive valuessign()
returnstrue
, for negativefalse
.FloatLiteral
is still aString
and the possible-
sign is formatted into the string. We talked about storing anf64
here instead. Probably would be a good option. But the present API is backward compatible.