summary refs log tree commit diff stats
path: root/compiler/concepts.nim
Commit message (Collapse)AuthorAgeFilesLines
* chore: fix some typos (#23412)soonsouth2024-03-161-1/+1
| | | Signed-off-by: soonsouth <cuibuwei@163.com>
* refactoring: no inheritance for PType/PSym (#23403)Andreas Rumpf2024-03-141-1/+1
|
* type refactor: part 4 (#23077)Andreas Rumpf2023-12-151-24/+26
|
* Types: Refactorings; step 1 (#23055)Andreas Rumpf2023-12-121-3/+3
|
* IC: progress and refactorings (#22961)Andreas Rumpf2023-11-201-2/+2
|
* prepare for the enforcement of `std` prefix (#22873)ringabout2023-10-291-1/+3
| | | follow up https://github.com/nim-lang/Nim/pull/22851
* minor refactoring, move some sym/type construction to semdata (#22654)metagn2023-09-071-14/+0
| | | | | | | | | | Move `symFromType` and `symNodeFromType` from `sem`, and `isSelf` and `makeTypeDesc` from `concepts` into `semdata`. `makeTypeDesc` was moved out from semdata [when the `concepts` module was added](https://github.com/nim-lang/Nim/commit/6278b5d89af38e90aa30cfc4c217a2f4b1323339), so its old position might have been intended. If not, `isSelf` can also go in `ast`.
* unpublic the sons field of PType; the precursor to PType refactorings (#22446)ringabout2023-08-111-3/+3
| | | | | | | | | | | * unpublic the sons field of PType * tiny fixes * fixes an omittance * fixes IC * fixes
* use strictdefs for compiler (#22365)ringabout2023-08-061-0/+7
| | | | | | | | | | | | | | | * wip; use strictdefs for compiler * checkpoint * complete the chores * more fixes * first phase cleanup * Update compiler/bitsets.nim * cleanup
* Fix concepts with doc comments (#22228)Jake Leahy2023-07-061-1/+3
| | | | | | | | | | | | | | | * Add testcase This tries to use a concept with a doc comment which currently leads to a segfault * Ignore nil nodes which happen when there are doc comments in new style concept This was done instead of semming the comments since `semConceptDecl` says it only supports lists of actual statements * Go with alternative fix: Sem comments but ignore them Since `nil` could mean anything it is best to not silently ignore it (In case another nil problem happens in future Also fix test case so it isn't an infinite loop
* refactoring in preparation for better, simpler name mangling that wor… ↵Andreas Rumpf2023-04-241-1/+1
| | | | | | | | | | | (#21667) * refactoring in preparation for better, simpler name mangling that works with IC flawlessly * use new disamb field * see if this makes tests green * make tests green again
* fixes #21263; consider all candidates for concept matches (#21265)ringabout2023-01-171-1/+1
|
* fix a few "broken link" warnings (#20837)Andrey Makarov2022-11-141-1/+1
|
* Support doc comments in new-styled concepts (#20752)konsumlamm2022-11-041-0/+2
| | | Support comments in new-styled concepts
* move assertions out of system (#19599)flywind2022-03-231-0/+3
|
* Make error message for empty new-styled concept more descriptive (#18506)konsumlamm2021-07-181-8/+7
| | | | | | | * Allow empty new-styled concept Slightly improve error messages * Make empty new-styled concepts an error
* cString => cSourceString; tyCString => tyCstring so that error msgs show ↵Timothee Cour2021-04-171-2/+2
| | | | cstring, not cString (#17744)
* new-style concepts implementation, WIP (#15251)Andreas Rumpf2021-02-241-0/+340
* fixes #15210 [backport:1.2] * make tests green * make ordinal work * makes Swapable test compile * make Indexable example work * concepts: 'self' is now 'Self' * concepts: make Dictionary example compile * document the new concept implementation * concepts: make typeDesc work properly * concepts: allow documentation comments (d'oh)