W3cubDocs

/Nim

sempass2

Source Edit

Imports

ast, astalgo, msgs, renderer, magicsys, types, idents, trees, wordrecg, options, guards, lineinfos, semfold, semdata, modulegraphs, varpartitions, typeallowed, nilcheck, errorhandling, semstrictfuncs, suggestsymdb, pushpoppragmas, liftdestructors

Procs

proc checkForSink(config: ConfigRef; idgen: IdGenerator; owner: PSym; arg: PNode) {....raises: [
    Exception, ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
Source Edit
proc checkMethodEffects(g: ModuleGraph; disp, branch: PSym) {....raises: [
    Exception, ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
checks for consistent effects for multi methods. Source Edit
proc getEbase(g: ModuleGraph; info: TLineInfo): PType {....raises: [KeyError,
    Exception, ValueError, OSError, IOError, ERecoverableError], tags: [
    ReadDirEffect, RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
Source Edit
proc setEffectsForProcType(g: ModuleGraph; t: PType; n: PNode; s: PSym = nil) {....raises: [
    Exception, ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
    forbids: [].}
Source Edit
proc trackProc(c: PContext; s: PSym; body: PNode) {....raises: [Exception,
    ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
    TimeEffect], forbids: [].}
Source Edit
proc trackStmt(c: PContext; module: PSym; n: PNode; isTopLevel: bool) {....raises: [
    KeyError, Exception, ValueError, OSError, IOError, ERecoverableError], tags: [
    RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
    TimeEffect], forbids: [].}
Source Edit

© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/compiler/sempass2.html