Commit Graph

155 Commits

Author SHA1 Message Date
Andreas Rumpf
22789a0bfc fixes #5419 2017-02-24 00:32:14 +01:00
nigredo-tori
7372ad2bed NimTypeKind - replace ntyArrayConstr with ntyAlias
Cleanup following the change in `TTypeKind`
2016-12-28 22:37:54 +07:00
andri lim
bd560d6a4e fixes #4915 2016-10-27 12:22:12 +07:00
Andreas Rumpf
6fd27a8a08 Merge pull request #4945 from arnetheduck/cleanup-tyXxx
Cleanup ty xxx
2016-10-24 19:20:02 +02:00
Andreas Rumpf
00f09f1309 Merge pull request #4819 from andreaferretti/usefulmacros
Some useful macros
2016-10-24 18:41:45 +02:00
Jacek Sieka
f5c3eb6a25 clean up tyMutable remnants 2016-10-24 23:30:10 +08:00
Jacek Sieka
b3de34548d clean up tyConst remnants 2016-10-24 23:19:46 +08:00
Jacek Sieka
f488ed973d clean up tyBigNum remnants 2016-10-24 23:11:38 +08:00
Jacek Sieka
6f7b891bdc remove remnants of tyIter 2016-10-24 21:10:48 +08:00
Andrea Ferretti
a9e5f5d7e2 Removed use of stmt 2016-09-25 15:53:32 +02:00
Andrea Ferretti
235fc29834 Added expandMacros macro 2016-09-22 12:26:51 +02:00
Andreas Rumpf
54cc702351 update stdlib to not use deprecated symbols 2016-08-25 17:21:48 +02:00
Andreas Rumpf
60b187513e stdlib and compiler don't use .immediate anymore 2016-07-29 23:51:01 +02:00
Andreas Rumpf
2ac21261b4 Merge pull request #4394 from yglukhov/macro-routines2
Added addPragma routine
2016-07-16 14:35:17 +02:00
Araq
c416346d38 deprecated macros.emit 2016-06-30 18:42:56 +02:00
Yuriy Glukhov
e06b32249f Added addPragma routine 2016-06-22 22:08:07 +03:00
Hans Raaf
25c3a62acd Fix a warning about result reused in macros.nim. 2016-06-21 13:13:46 +02:00
Andreas Rumpf
1a88c01f92 documentation build cleaned up 2016-05-31 03:04:45 +02:00
Andreas Rumpf
d3fe4a2db1 Merge pull request #4113 from jcosborn/gettypeinst
getTypeInst
2016-05-28 17:14:52 +02:00
Araq
97129ebd8a added another version of eqIdent 2016-05-10 22:03:07 +02:00
James Osborn
0356f53b56 getTypeInst and getTypeImpl mostly working now and added test 2016-05-04 00:24:44 -05:00
James Osborn
d462cca21f added getTypeInst which includes generic parameters 2016-05-04 00:24:44 -05:00
Ruslan Mustakov
1d85ca3aa4 Fixed macros unpackX procedured to return values correctly 2016-04-04 15:50:02 +06:00
Andreas Rumpf
c9966a3e17 use 'using' instead of 'sig' keyword; cleans up new features a bit 2016-02-29 12:19:54 +01:00
Andreas Rumpf
38dee2095c added 'sig' feature; removed tfShared support in the compiler 2016-02-28 19:56:41 +01:00
Ruslan Mustakov
ac4dad5193 Added nnkTemplateDef and nnkConverterDef to RoutineNodes set 2016-02-10 14:53:46 +06:00
Andreas Rumpf
c1627354d1 first implementation of the new lambda-lifting pass; barely anything works 2015-12-26 00:42:30 +01:00
Araq
ba6d0eb4db fixes #3541 2015-11-18 16:07:20 +01:00
Araq
0cc662d8b8 fixes bootstrapping 2015-08-21 12:18:04 +02:00
Araq
695e2e970e implemented macros.getImpl 2015-08-21 02:34:34 +02:00
Dominik Picheta
b9c1dd0072 Fixed macros.nim not compiling.
Iterator aliases are not possible.
2015-08-03 18:42:02 +01:00
Dominik Picheta
303bc45745 Added documentation to macros.items. 2015-08-03 17:05:14 +01:00
Dominik Picheta
04dc46b1aa Merge branch 'macro-items' of https://github.com/transfuturist/Nim into transfuturist-macro-items 2015-08-03 17:03:57 +01:00
Araq
8913e82f45 removed macros.high as it never worked outside of macros.nim 2015-07-28 02:54:21 +02:00
Araq
83842ff4ed Nimrod -> Nim rename 2015-07-08 11:49:33 +02:00
Araq
b9ccd06013 fixes bootstrapping problem 2015-07-04 18:24:57 +02:00
transfuturist
558360e6fd Update macros.nim 2015-07-03 13:48:13 -07:00
Adam Strzelecki
1a0417fbe0 macros: Introduce sameType(a, b) for node types
Previously introduced node comparison `==` was working somehow wrong on nodes
returned from getType(a), comparing just ids of the symbols.

Recently introduced `==` change 47dce26886
started comparing symbol nodes pointer-wise, thus strictly. Since getType(a)
always creates new symbol pointing to the type, comparing two such nodes using
`==` always returns false, even they point to the same type.

That is why we need a new sameType macro to be able to tell if these nodes
point to the same type.
2015-07-03 11:11:10 +02:00
Araq
60ac5e3e76 fixes #3046 2015-07-03 10:55:50 +02:00
Araq
6b3abdba0f made macros.$ a bit smarter; but really this one needs to die 2015-07-03 01:57:01 +02:00
transfuturist
a31c36e98f Undeprecate children 2015-06-20 12:21:16 -07:00
transfuturist
bc2aaea853 Change check for NimNode items to node kind 2015-05-17 15:05:26 -07:00
Adam Strzelecki
1d47617d1b Macros: Introduce getType(t: typedesc): NimNode
Since typedesc are exception in macros and they are not implicitly converted to
NimNode on macro call, we need some means to perform such conversion on demand.

Fortunately it is as simple as declaring new magic "NGetType" proc with
typedesc parameter.

NOTE: Keeping actual macro exceptional behavior for typedesc is important,
since it allows passing typedesc macro parameter to other procs or macros
expecting type parameter. If typedesc parameter was implicitly converted, then
we would lost this ability.
2015-05-17 15:28:41 +02:00
transfuturist
3d80fcb8c6 Add value check for NimNode items 2015-05-16 17:50:01 -07:00
transfuturist
7500eed0cf Better solution: deprecation 2015-05-16 17:26:47 -07:00
transfuturist
939c0a6bb8 NimNode needs an items iterator to be used nicely in for statements 2015-05-16 10:52:44 -07:00
Araq
43eae0c113 macros: added bool literal support 2015-04-20 20:40:10 +02:00
Araq
2b4e233510 Merge branch 'devel' of https://github.com/Araq/Nim into devel 2015-04-20 11:44:54 +02:00
Araq
dc3a0bc009 added macros.newTree proc (why didn't we do this earlier?) 2015-04-20 11:34:18 +02:00
fowlmouth
f8917e8ad3 add ntys up to ntyNot 2015-03-28 03:19:48 -05:00