# pragmas

Dark Mode

- Index

Search:
Group by:

# Imports

condsyms, ast, astalgo, idents, semdata, msgs, renderer, wordrecg, ropes, options, extccomp, magicsys, trees, types, lookups, lineinfos, pathutils, linter

# Consts

    FirstCallConv = wNimcall

  Source Edit

    LastCallConv = wNoconv

  Source Edit

    procPragmas = {wMagic..wThread, wConstructor, wDelegator,
                   wImportCpp..wExportNims, wNodecl, wSideEffect..wMerge,
                   wDynlib..wProcVar, wUsed, wError, wStackTrace..wLineTrace,
                   wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
                   wRaises, wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
                   wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
                   wCodegenDecl, wLocks, wLiftLocals, wExtern}

  Source Edit

    converterPragmas = {wMagic..wThread, wConstructor, wDelegator,
                        wImportCpp..wExportNims, wNodecl, wSideEffect..wMerge,
                        wDynlib..wProcVar, wUsed, wError, wStackTrace..wLineTrace,
                        wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
                        wRaises, wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
                        wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
                        wCodegenDecl, wLocks, wLiftLocals, wExtern}

  Source Edit

    methodPragmas = {wMagic..wThread, wConstructor, wDelegator,
                     wImportObjC..wExportNims, wNodecl, wSideEffect..wMerge,
                     wDynlib..wUsed, wError, wStackTrace..wLineTrace,
                     wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
                     wRaises, wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
                     wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
                     wCodegenDecl, wLocks, wLiftLocals, wExtern}

  Source Edit

    templatePragmas = {wDeprecated, wError, wGensym, wInject, wDirty, wDelegator,
                       wExportNims, wUsed, wPragma}

  Source Edit

    macroPragmas = {wMagic, wDelegator, wImportCpp..wImportObjC,
                    wImportc..wExportNims, wNodecl, wNoSideEffect,
                    wCompilerProc..wCore, wUsed, wError, wDeprecated,
                    wNimcall..wNoconv, wNonReloadable, wDiscardable,
                    wGensym..wInject, wExtern}

  Source Edit

    iteratorPragmas = {wMagic, wImportCpp..wImportObjC, wImportc..wExportNims,
                       wNodecl, wSideEffect, wNoSideEffect..wGcSafe, wUsed, wError,
                       wDeprecated, wNimcall..wNoconv, wRaises, wTags..wEnsures,
                       wBorrow..wDiscardable, wGensym..wInject, wLocks, wExtern}

  Source Edit

    exprPragmas = {wLine, wLocks, wNoRewrite, wGcSafe, wNoSideEffect}

  Source Edit

    stmtPragmas = {wChecks, wObjChecks, wFieldChecks, wRangeChecks, wBoundChecks,
                   wOverflowChecks, wNilChecks, wStaticBoundchecks, wStyleChecks,
                   wAssertions, wWarnings, wHints, wLineDir, wStackTrace,
                   wLineTrace, wOptimization, wHint, wWarning, wError, wFatal,
                   wDefine, wUndef, wCompile, wLink, wLinksys, wPure, wPush, wPop,
                   wPassl, wPassc, wLocalPassc, wDeadCodeElimUnused, wDeprecated,
                   wFloatChecks, wInfChecks, wNanChecks, wPragma, wEmit, wUnroll,
                   wLinearScanEnd, wPatterns, wTrMacros, wEffects, wNoForward,
                   wReorder, wComputedGoto, wInjectStmt, wExperimental, wThis,
                   wUsed, wInvariant, wAssume, wAssert}

  Source Edit

    lambdaPragmas = {wNimcall..wNoconv, wNoSideEffect, wSideEffect, wNoreturn,
                     wNosinks, wDynlib, wHeader, wThread, wAsmNoStackFrame, wRaises,
                     wLocks, wTags, wRequires, wEnsures, wGcSafe, wCodegenDecl,
                     wNoInit}

  Source Edit

    typePragmas = {wMagic, wFinal, wImportCpp..wImportObjC, wImportc..wRequiresInit,
                   wNodecl..wPure, wHeader, wGcSafe, wCompilerProc..wCore, wUsed,
                   wError, wDeprecated, wSize, wPackage, wBorrow,
                   wAcyclic..wShallow, wGensym..wInject, wInheritable, wUnchecked,
                   wPartial..wExplain, wExtern, wUnion..wPacked, wByCopy..wByRef}

  Source Edit

    fieldPragmas = {wCursor..wNoalias, wImportCpp..wImportObjC,
                    wImportc..wExportCpp, wRequiresInit..wAlign, wUsed, wError,
                    wDeprecated, wGuard, wExtern, wBitsize}

  Source Edit

    varPragmas = {wMagic, wCursor..wNoalias, wImportCpp..wImportObjC,
                  wImportc..wExportNims, wAlign..wNodecl, wHeader, wDynlib..wCore,
                  wUsed, wError, wDeprecated, wCompileTime..wNoInit,
                  wGensym..wInject, wThreadVar, wGlobal..wCodegenDecl, wGuard,
                  wExtern, wGoto, wRegister, wVolatile}

  Source Edit

    constPragmas = {wMagic, wIntDefine..wBoolDefine, wImportCpp..wImportObjC,
                    wImportc..wExportNims, wNodecl, wHeader, wCompilerProc..wCore,
                    wUsed, wError, wDeprecated, wGensym..wInject, wExtern}

  Source Edit

    paramPragmas = {wNoalias, wInject, wGensym}

  Source Edit

    letPragmas = {wMagic, wCursor..wNoalias, wImportCpp..wImportObjC,
                  wImportc..wExportNims, wAlign..wNodecl, wHeader, wDynlib..wCore,
                  wUsed, wError, wDeprecated, wCompileTime..wNoInit,
                  wGensym..wInject, wThreadVar, wGlobal..wCodegenDecl, wGuard,
                  wExtern, wGoto, wRegister, wVolatile}

  Source Edit

    procTypePragmas = {wNimcall..wNoconv, wVarargs, wNoSideEffect, wThread, wRaises,
                       wLocks, wTags, wGcSafe, wRequires, wEnsures}

  Source Edit

    forVarPragmas = {wInject, wGensym}

  Source Edit

    allRoutinePragmas = {wMagic..wThread, wConstructor, wDelegator,
                         wImportCpp..wExportNims, wNodecl, wSideEffect..wMerge,
                         wDynlib..wUsed, wError, wStackTrace..wLineTrace,
                         wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
                         wRaises, wTags..wEnsures, wNoDestroy,
                         wCompileTime..wNoInit, wBorrow..wDiscardable,
                         wGensym..wInject, wAsmNoStackFrame, wCodegenDecl, wLocks,
                         wLiftLocals, wExtern}

  Source Edit

    enumFieldPragmas = {wDeprecated}

  Source Edit

# Procs

    proc getPragmaVal(procAst: PNode; name: TSpecialWord): PNode {...}{.raises: [],
        tags: [].}

  Source Edit

    proc invalidPragma(c: PContext; n: PNode) {...}{.
        raises: [Exception, ValueError, IOError, ERecoverableError],
        tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}

  Source Edit

    proc illegalCustomPragma(c: PContext; n: PNode; s: PSym) {...}{.
        raises: [Exception, ValueError, IOError, ERecoverableError],
        tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}

  Source Edit

    proc pragmaAsm(c: PContext; n: PNode): char {...}{.
        raises: [Exception, ValueError, IOError, ERecoverableError],
        tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}

  Source Edit

    proc semAsmOrEmit(con: PContext; n: PNode; marker: char): PNode {...}{.
        raises: [Exception, ValueError, IOError, ERecoverableError],
        tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}

  Source Edit

    proc implicitPragmas(c: PContext; sym: PSym; n: PNode;
                         validPragmas: TSpecialWords) {...}{.raises: [Exception,
        ValueError, IOError, ERecoverableError, OSError, KeyError, EOFError], tags: [
        RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect, ReadDirEffect,
        WriteDirEffect].}

  Source Edit

    proc hasPragma(n: PNode; pragma: TSpecialWord): bool {...}{.raises: [], tags: [].}

  Source Edit

    proc pragma(c: PContext; sym: PSym; n: PNode; validPragmas: TSpecialWords;
                isStatement: bool = false) {...}{.raises: [Exception, ValueError,
        IOError, ERecoverableError, OSError, KeyError, EOFError], tags: [RootEffect,
        WriteIOEffect, ReadIOEffect, ReadEnvEffect, ReadDirEffect, WriteDirEffect].}

  Source Edit