Vindaar
0a1d4ba842
fix issue #20922 by handling missing expr in exprList for tkOf ( #20930 )
...
* fix issue #20922 by handling missing expr in `exprList` for `tkOf`
* fix line numbers in test case
* rewrite exprList requiring expr, add optionalExprList for except
As suggested by @metagn.
* update test case to reflect new code
* update grammar.txt
* update line numbers in test case taking into account nimout
Given the number of errors that are produced it seems easier to do it
this way instead of using `tt.Error`.
2022-12-08 10:59:13 +01:00
metagn
4ca2dcb404
Named arguments in commands + many grammar fixes ( #20994 )
...
* Breaking parser changes, implement https://github.com/nim-lang/RFCs/issues/442
Types are separated from expressions and better reflected in the grammar.
* add test
* more accurate grammar
* fix keyword typedescs
* accept expressions in proc argument lists
* CI "fixes"
* fixes
* allow full ref expressions again, adapt old tests
* cleanup, fix some tests
* improve grammar, try and revert semtypes change
* restrict sigil binding to identOrLiteral
* fix, should have caught this immediately
* add changelog entry, fix double not nil bug
* correct grammar
* change section
* fix
* real fix hopefully
* fix test
* support LL(1) for tuples
* make grammar.txt too
2022-12-06 13:11:56 +01:00
ringabout
e323b91a32
correct grammar (ref #20199 ) and add check for grammar.txt ( #20494 )
...
* correct grammar; ref #20199
* add check for keeping grammar.txt up-to-date
* add nimTestGrammar
2022-10-06 16:36:32 +02:00
ringabout
f89ba2c951
add default field support for object in ARC/ORC ( #20480 )
...
* fresh start
* add cpp target
* add result support
* add nimPreviewRangeDefault
* reduce
* use orc
* refactor common parts
* add tuple support
* add testcase for tuple
* cleanup; fixes nimsuggest tests
* there is something wrong with cpp
* remove
* add support for seqs
* fixes style
* addd initial distinct support
* remove links
* typo
* fixes tuple defaults
* add rangedefault
* add cpp support
* fixes one more bugs
* add more hasDefaults
* fixes ordinal types
* add testcase for #16744
* add testcase for #3608
* fixes docgen
* small fix
* recursive
* fixes
* cleanup and remove tuple support
* fixes nimsuggest
* fixes generics procs
* refactor
* increases timeout
* refactor hasDefault
* zero default; disable i386
* add tuples back
* fixes bugs
* fixes tuple
* add more tests
* fix one more bug regarding tuples
* more tests and cleanup
* remove messy distinct types which must be initialized by original types
* add tests
* fixes zero default
* fixes grammar
* fixes tests
* fixes tests
* fixes tests
* fixes comments
* fixes and add testcase
* undo default values for results
Co-authored-by: flywind <43030857+xflywind@users.noreply.github.com>
2022-10-04 12:45:10 +02:00
metagn
86f7f4ffa5
remove deprecated type pragma syntax, fix bugs that required it ( #20199 )
...
* remove deprecated pragma syntax from 0.20.0
closes #4651 , closes #16653 with a cheap fix for now due to
how early `tfFinal` is set
* remove type pragma between name and generics
* undo removal, try removing bind expression (0.8.14)
* fix test, unremove bind expr
* remove again
* Update changelog.md
Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* dependencies @ HEAD & weave test dependencies
* try fix package ci
Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
2022-09-03 09:52:13 +02:00
hlaaftana
61d682e733
Allow full commands and blocks in type sections ( #19181 )
...
* allow full commands and blocks in type sections
* update grammar
* fix changelog [skip ci]
* more tests
* even more tests
2022-01-02 07:29:55 +01:00
Andreas Rumpf
a61bbf7d8d
fixes grammar typos [backport] ( #19289 )
2021-12-27 17:28:19 +01:00
Andreas Rumpf
2e2d928846
formal grammar updates [backport:1.2] ( #18803 )
2021-09-04 19:52:57 +02:00
Timothee Cour
3aa16c1de0
fix RFC #341 : dot-like operators are now parsed with same precedence as . ( #18711 )
...
* fix RFC #341 : dot-like operators are now parsed with same precedence as `.`
* fixup
* [skip ci] address comment in changelog
* address comment
* update grammmar
* add manual entry
* fixup
* -d:nimPreviewDotLikeOps
* address comment to unblock PR: move nimPreviewDotLikeOps out of config/config.nims
2021-08-25 06:50:40 +02:00
Andreas Rumpf
5f5a92379f
custom integer literals ( #17489 )
...
* user defined integer literals; refs #17020
* updated renderer.nim
* use mlexerutils helper
* imported all test cases from https://github.com/nim-lang/Nim/pull/17020
* final grammar updated
2021-03-24 14:46:19 +01:00
narimiran
37a98c6c58
small fix in grammar.txt [ci skip]
2021-01-28 09:42:24 +01:00
Andreas Rumpf
92163fa330
implements https://github.com/nim-lang/RFCs/issues/258 ( #15503 )
...
* implements https://github.com/nim-lang/RFCs/issues/258
* don't be too strict with custom pragma blocks
* cast pragmas: documentation
* added most missing inference query procs to effecttraits.nim
2020-10-06 16:47:15 +02:00
hlaaftana
de27910ab7
make from an operator ( #14241 )
2020-05-08 07:54:46 +02:00
hlaaftana
82fc66b607
Update grammar.txt with func and as ( #14147 ) [backport]
2020-04-28 10:57:35 +02:00
Andreas Rumpf
fadbd8f70d
fixes #10665 ( #13141 ) [backport]
2020-01-14 13:51:28 +01:00
Andreas Rumpf
4e94f49065
parser/grammar sync; fixes #9608 [backport]
2018-11-07 20:07:43 +01:00
Araq
212fdc5946
added the 'x.p[:T]' notation for explicit generic instantiations in combination with the ddot calling syntax
2018-04-06 22:05:57 +02:00
Robert Hencke
ac10a3813a
Fix casing in rule 'typeDesc' ( #7324 )
...
Also, leave a note in grammar.txt that it is generated.
2018-03-12 09:27:36 +01:00
Fabian Keller
40a6caeed8
Block expressions ( #6695 )
...
* enabled parsing of block expressions
* added test case; closes #3827
* adjusted grammar doc strings
* updated grammar in docs
2017-11-06 20:33:01 +01:00
Andreas Rumpf
76cf4f4c1b
parser enhancement: allow keywords after dots
2017-07-11 00:54:47 +02:00
Andreas Rumpf
e21ca54b11
assignments support ': stmtList' like let/var do
2017-04-04 12:20:43 +02:00
Andreas Rumpf
cab2ce7e87
update grammar.txt
2017-04-02 23:42:53 +02:00
Andreas Rumpf
98c6af780e
grammar update
2017-03-31 17:02:14 +02:00
Andreas Rumpf
0baa1d9955
first version of .partial objects
2016-02-28 23:22:47 +01:00
Araq
5fe71db6d9
'out T' is an alias for 'var T'
2015-11-26 17:46:05 +01:00
Araq
9e4e7ca535
fixes #2533
2015-04-24 12:36:41 +02:00
Araq
f6ff01572e
breaking change: 'concept' is now a keyword and used instead of 'generic'
2015-03-23 13:10:18 +01:00
Araq
08c0ba379a
fixes #1805
2015-03-21 20:38:28 +01:00
Araq
c87f1eb581
'discard' can be used instead of 'nil' for empty case object branches
2015-01-12 02:00:36 +01:00
Araq
2804c0373c
compiler\parser.nim
...
implemented arrow like operators
2014-12-08 08:56:04 +01:00
Araq
e27ab36731
implements 'defer'
2014-12-04 10:12:32 +01:00
Araq
212293197f
fixes #1161
2014-07-01 21:47:53 +02:00
flaviut
bebc3f62a9
Regenerate docs
2014-06-08 19:42:28 -04:00
flaviut
145cb3ae8c
fix overlooked grammer comment
2014-06-08 15:46:19 -04:00
flaviut
6b9359d901
updated grammer, fixed oversight
2014-06-04 15:40:31 -04:00
Araq
c30f6cfcf1
cleaned up command expressions
2014-02-02 14:34:37 +01:00
Araq
3e5cb6644f
typeClasses now documented in grammar.txt
2014-01-23 17:19:12 +01:00
Araq
d18f40b4e2
updated grammar.txt
2014-01-20 08:35:09 +01:00
Araq
8b5aa221ad
support for multiple modules of the same name; niminst supports 'platforms'; minor bugfixes
2013-09-24 16:07:07 +02:00
Araq
b3ac785f95
fixes semicolon parsing issue
2013-06-03 08:05:32 +02:00
Araq
9b9a180947
'inject' for 'for' loop variables
2013-05-14 00:41:07 +02:00
Araq
f8af7ed6b4
more intuitive behaviour for 'discardable' in expression bodies
2013-05-04 18:58:58 +02:00
Araq
8a595b631b
new parsing scheme is documented
2013-04-21 20:09:46 +02:00
Grzegorz Adam Hankiewicz
72a3e21f28
Removes executable bit for text files.
2013-03-16 23:53:07 +01:00
Araq
ccd2934e4a
first steps for 'not nil' annotation
2012-11-25 11:03:14 +01:00
Araq
f610d2d221
'iterator' as type description
2012-11-22 08:31:40 +01:00
Araq
e68830a952
improvements for 'bind', fixes #166
2012-07-18 17:21:10 +02:00
Araq
b4a9aca2d3
';' now valid for parameter lists
2012-07-11 18:17:39 +02:00
Araq
2e2650c708
' is optional in type suffixes for numerical literals
2012-07-02 08:49:38 +02:00
Araq
4da067691e
implemented 'static'; macros do not work anymore
2012-03-15 00:28:28 +01:00