This module implements semantic checking for calls.this module does the semantic checking of statementsThis module does the semantic transformation of the fields* iterators.This module implements Nim's object construction rules.
Imports
-
ast, options, astalgo, trees, wordrecg, ropes, msgs, idents, renderer, types, platform, magicsys, nversion, nimsets, semfold, modulepaths, importer, procfind, lookups, pragmas, semdata, semtypinst, sigmatch, transf, vmdef, vm, aliases, cgmeth, lambdalifting, evaltempl, patterns, parampatterns, sempass2, linter, semmacrosanity, lowerings, plugins/active, lineinfos, int128, isolation_check, typeallowed, modulegraphs, enumtostr, concepts, astmsgs, spawn
Consts
tyGenericLike = {tyGenericInvocation, tyGenericInst, tyArray, tySet, tySequence, tyOpenArray, tyUserTypeClassInst..tyCompositeTypeClass}
- Source Edit
tyMagicGenerics = {tySet, tySequence, tyArray, tyOpenArray}
- Source Edit
tyUserDefinedGenerics = {tyGenericInst, tyGenericInvocation, tyUserTypeClassInst}
- Source Edit
Procs
proc closePContext(graph: ModuleGraph; c: PContext; n: PNode): PNode {....raises: [ KeyError, Exception, ValueError, IOError, OSError, ERecoverableError], tags: [ ReadDirEffect, RootEffect, ReadIOEffect, WriteIOEffect, ReadEnvEffect], forbids: [].}
- Source Edit
proc instGenericConvertersArg(c: PContext; a: PNode; x: TCandidate) {....raises: [ Exception, ValueError, KeyError, OSError, IOError, ERecoverableError, EOFError], tags: [RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect, WriteDirEffect, TimeEffect], forbids: [].}
- Source Edit
proc instGenericConvertersSons(c: PContext; n: PNode; x: TCandidate) {....raises: [ Exception, ValueError, KeyError, OSError, IOError, ERecoverableError, EOFError], tags: [RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect, WriteDirEffect, TimeEffect], forbids: [].}
- Source Edit
proc isRecursiveType(t: PType): bool {....raises: [], tags: [], forbids: [].}
- Source Edit
proc notFoundError(c: PContext; n: PNode; errors: CandidateErrors) {....raises: [ Exception, ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [ RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect], forbids: [].}
- Source Edit
proc preparePContext(graph: ModuleGraph; module: PSym; idgen: IdGenerator): PContext {....raises: [ IOError, Exception, ValueError, KeyError, OSError, ERecoverableError], tags: [ ReadIOEffect, RootEffect, ReadDirEffect, WriteIOEffect, ReadEnvEffect], forbids: [].}
- Source Edit
proc pushProcCon(c: PContext; owner: PSym) {....raises: [], tags: [], forbids: [].}
- Source Edit
proc semWithPContext(c: PContext; n: PNode): PNode {....raises: [OSError, Exception, ValueError, KeyError, IOError, ERecoverableError, EOFError, ESuggestDone, OSError, Exception, ValueError, KeyError, IOError, EOFError, ERecoverableError], tags: [ReadEnvEffect, ReadIOEffect, RootEffect, ReadDirEffect, WriteIOEffect, WriteDirEffect, TimeEffect, ExecIOEffect], forbids: [].}
- Source Edit
Templates
template commonTypeBegin(): PType
- Source Edit