Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Better support for treating templates and macros as symbols. | Zahary Karadjov | 2018-05-07 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | This allows you to pass a template or a macro to another macro which can then inspect the implementation of the former template/macro using `getImpl`. Since templates can be freely redefined, this allows you to treat their symbols as compile-time variables that have lexical scope. A motivating PoC example for a logging library taking advantage of this will be provided in the next commit. Implementation details: * The name of a template or a macro will be consider a symbol if the template/macro requires parameters * For parameterless templates/macros, you can use `bindSym`, which was extended to also work outside of compile-time procs. | ||||
* | hasCustomPragma/getCustomPragmaVal: small fix (#7650) | RSDuck | 2018-04-19 | 1 | -1/+5 |
| | | | | | | | | * fix hasCustomPragma/getCustomPragmaVal for types without pragma * fix pragma on pointer test * removed trailing spaces | ||||
* | Fixes #7595 (#7623) | Dmitry Atamanov | 2018-04-16 | 1 | -7/+6 |
| | | | | | | | | * Fixes #7595 * Add brackets * Fix for treeRepr and lispRepr too | ||||
* | update macros.nim: followup on pull #7598 (#7619) | Timothee Cour | 2018-04-16 | 1 | -5/+2 |
| | | | | @Araq @krux02 https://github.com/nim-lang/Nim/pull/7598 seemed inaccurate eg for NLineInfo there's `mNLineInfo` but no opcNLineInfo | ||||
* | move eqIdent to vm.nim (#7585) | Arne Döring | 2018-04-15 | 1 | -32/+51 |
| | | | | | | * Strutils comment changes. * fix typo | ||||
* | add example to docs for getTypeInst and getTypeImpl (#7206) | jcosborn | 2018-04-15 | 1 | -9/+45 |
| | | | | | | | | * add example to docs for getTypeInst and getTypeImpl * made examples use runnableExamples * changed assert to doAssert | ||||
* | fixes #7451 (#7575) | RSDuck | 2018-04-14 | 1 | -20/+65 |
| | |||||
* | introduce nkTupleConstr AST node for unary tuple construction; breaking change | Andreas Rumpf | 2018-04-13 | 1 | -1/+2 |
| | |||||
* | added comment to macros (#7598) | Arne Döring | 2018-04-13 | 1 | -0/+6 |
| | | | | | | * added comment to macros * Update macros.nim | ||||
* | deprecate macros.callsite; fixes #7369 | Andreas Rumpf | 2018-04-12 | 1 | -1/+3 |
| | |||||
* | Added a few useful os calls to VM (#7440) | genotrance | 2018-04-12 | 1 | -0/+4 |
| | |||||
* | Get symbol kind (#7491) | Arne Döring | 2018-04-11 | 1 | -63/+99 |
| | |||||
* | Fixes #7473 (#7475) | Arne Döring | 2018-04-04 | 1 | -36/+8 |
| | | | | | * removed code duplication * changelog entry, adopt tests for changes | ||||
* | C codegen: preparations for different seq and string implementations | Andreas Rumpf | 2018-04-03 | 2 | -7/+6 |
| | |||||
* | Add CommentStmt to astGenRepr (#7313) | PMunch | 2018-03-16 | 1 | -2/+2 |
| | | | | | | * Added codeRepr and dumpCode to the macros module. This allows those writing macros to write examples, get the code to generate the AST for that example, and then modify that code to be dynamic with the macro function. | ||||
* | Implement custom annotations (#6987) | cooldome | 2018-01-09 | 1 | -0/+54 |
| | |||||
* | New runtime: fix allocator inheritable (#7046) | Dmitry Atamanov | 2018-01-09 | 1 | -1/+1 |
| | |||||
* | Fixes for new runtime (#7037) | Dmitry Atamanov | 2018-01-08 | 2 | -6/+28 |
| | |||||
* | new runtime: added typelayouts.nim | Andreas Rumpf | 2018-01-04 | 3 | -17/+64 |
| | |||||
* | allocators.nim: minor typo | Andreas Rumpf | 2018-01-04 | 4 | -0/+332 |
| | |||||
* | first steps in adding template/macro calls to stack traces | Araq | 2017-12-21 | 1 | -1/+1 |
| | |||||
* | added macros.unpackVarargs | Araq | 2017-11-30 | 1 | -0/+5 |
| | |||||
* | Merge branch 'devel' of github.com:nim-lang/Nim into devel | Araq | 2017-11-21 | 1 | -14/+61 |
|\ | |||||
| * | cleaned up macros.nim | Andreas Rumpf | 2017-11-19 | 1 | -14/+9 |
| | | |||||
| * | macros.nim: deprecated ! operator | Andreas Rumpf | 2017-11-19 | 1 | -5/+11 |
| | | |||||
| * | 'newEnum' proc added to macros.nim (#6000) | WhiteDuke | 2017-11-19 | 1 | -0/+42 |
| | | |||||
| * | replaced asArray with a much more powerful mapLiterals macro | Andreas Rumpf | 2017-11-18 | 1 | -2/+6 |
| | | |||||
| * | Trim remaining expr/stmt from stdlib (#6742) | Lynn C. Rees | 2017-11-15 | 1 | -1/+1 |
| | | |||||
* | | added a version of macros.expectLen that takes min/max values | Araq | 2017-11-21 | 1 | -0/+7 |
|/ | |||||
* | work in progress: new implementation for 'a[^1]' | Andreas Rumpf | 2017-10-29 | 1 | -8/+15 |
| | |||||
* | more replacements for the deprecated '<' | Andreas Rumpf | 2017-10-29 | 1 | -3/+3 |
| | |||||
* | macros.nim: added missing pairs iterator | Araq | 2017-10-25 | 1 | -0/+5 |
| | |||||
* | make the tester compile again | Andreas Rumpf | 2017-09-25 | 1 | -1/+1 |
| | |||||
* | first steps of making 'opt' a first class type for Nim | Andreas Rumpf | 2017-09-25 | 1 | -0/+1 |
| | |||||
* | some work to make 'opt' a first class type | Andreas Rumpf | 2017-09-24 | 1 | -1/+1 |
| | |||||
* | first implementation of the 'func' keyword | Andreas Rumpf | 2017-09-23 | 1 | -3/+5 |
| | |||||
* | in prepration for the upcoming different integer inference rules | Andreas Rumpf | 2017-09-16 | 1 | -1/+1 |
| | |||||
* | equality check on NimSym has now support in the VM; refs #6139 | Araq | 2017-09-03 | 1 | -0/+3 |
| | |||||
* | macros module: 'name' proc skips the export marker | Andreas Rumpf | 2017-08-29 | 1 | -0/+2 |
| | |||||
* | Fixed NimTypeKind enum, added missing values. (#6157) | Yuriy Glukhov | 2017-07-30 | 1 | -2/+3 |
| | |||||
* | Added codeRepr and dumpCode to the macros module. (#5778) | PMunch | 2017-07-26 | 1 | -4/+101 |
| | |||||
* | Remove expr/stmt (#5857) | Arne Döring | 2017-07-25 | 1 | -1/+1 |
| | |||||
* | Disable stacktrace in locks (#6128) | Yuriy Glukhov | 2017-07-21 | 1 | -0/+4 |
| | |||||
* | Lineinfo change (#6084) | Arne Döring | 2017-07-17 | 1 | -1/+21 |
| | |||||
* | fixes #6049 add mixin release, acquire to withLock (#6113) | andri lim | 2017-07-16 | 1 | -0/+1 |
| | |||||
* | newLit emty seq fix (#6091) | Arne Döring | 2017-07-13 | 1 | -3/+10 |
| | | | | * the type of the empty seq is still the correct type * updated test | ||||
* | improved comment satement support in macros (#5904) | Arne Döring | 2017-06-02 | 1 | -0/+8 |
| | |||||
* | more and improved newLit procs in macros module | Arne Döring | 2017-05-23 | 1 | -3/+88 |
| | |||||
* | Fixes regression introduced by #5739. Improves newNimNode proc. | Dominik Picheta | 2017-05-17 | 1 | -1/+7 |
| | |||||
* | fixes #5419 | Andreas Rumpf | 2017-02-24 | 1 | -0/+2 |
| |