sem

Source   Edit  

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.

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, ERecoverableError], tags: [
    ReadDirEffect, RootEffect, ReadIOEffect, WriteIOEffect, ReadEnvEffect],
    forbids: [].}
Source   Edit  
proc commonType(c: PContext; x, y: PType): PType {.
    ...raises: [KeyError, Exception], tags: [ReadDirEffect, RootEffect],
    forbids: [].}
Source   Edit  
proc commonType(c: PContext; x: PType; y: PNode): PType {.
    ...raises: [Exception, KeyError], tags: [RootEffect, ReadDirEffect],
    forbids: [].}
Source   Edit  
proc instGenericConvertersArg(c: PContext; a: PNode; x: TCandidate) {....raises: [
    Exception, ValueError, KeyError, IOError, ERecoverableError, OSError,
    EOFError], tags: [RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect,
                      ReadEnvEffect, WriteDirEffect, TimeEffect], forbids: [].}
Source   Edit  
proc instGenericConvertersSons(c: PContext; n: PNode; x: TCandidate) {....raises: [
    Exception, ValueError, KeyError, IOError, ERecoverableError, OSError,
    EOFError], tags: [RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect,
                      ReadEnvEffect, WriteDirEffect, TimeEffect], forbids: [].}
Source   Edit  
proc isRecursiveType(t: PType): bool {....raises: [], tags: [], forbids: [].}
Source   Edit  
proc markConvertersUsed(c: PContext; n: PNode) {.
    ...raises: [Exception, ValueError, KeyError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
Source   Edit  
proc newSymG(kind: TSymKind; n: PNode; c: PContext): PSym {.
    ...raises: [Exception, ValueError, KeyError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
Source   Edit  
proc notFoundError(c: PContext; n: PNode; errors: CandidateErrors) {.
    ...raises: [Exception, ValueError, KeyError, 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, 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