# transf

Theme:

- Index

Search:
Group by:
Source Edit

# Imports

options, ast, astalgo, trees, msgs, idents, renderer, types, semfold, magicsys, cgmeth, lowerings, liftlocals, modulegraphs, lineinfos, closureiters, lambdalifting

# Types

    TransformBodyFlag = enum
      dontUseCache, useCache

  Source Edit

# Procs

    proc commonOptimizations(g: ModuleGraph; idgen: IdGenerator; c: PSym; n: PNode): PNode {.
        ...raises: [KeyError, Exception, ValueError, IOError, ERecoverableError], tags: [
        ReadDirEffect, RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
        TimeEffect], forbids: [].}

  Merges adjacent constant expressions of the children of the `&` call into a single constant expression. It also inlines constant expressions which are not complex. Source Edit

    proc transformBody(g: ModuleGraph; idgen: IdGenerator; prc: PSym;
                       flag: TransformBodyFlag; force = false): PNode {....raises: [
        KeyError, Exception, ValueError, IOError, ERecoverableError, OSError], tags: [
        ReadDirEffect, RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
        TimeEffect], forbids: [].}

  Source Edit

    proc transformExpr(g: ModuleGraph; idgen: IdGenerator; module: PSym; n: PNode): PNode {....raises: [
        Exception, ValueError, KeyError, IOError, ERecoverableError, OSError], tags: [
        RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
        TimeEffect], forbids: [].}

  Source Edit

    proc transformStmt(g: ModuleGraph; idgen: IdGenerator; module: PSym; n: PNode): PNode {....raises: [
        Exception, ValueError, KeyError, IOError, ERecoverableError, OSError], tags: [
        RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect,
        TimeEffect], forbids: [].}

  Source Edit