cgmeth
Source Edit This module implements code generation for methods.
Imports
options, ast, msgs, idents, renderer, types, magicsys, sempass2, modulegraphs, lineinfos, astalgo
Procs
proc generateIfMethodDispatchers(g: ModuleGraph; idgen: IdGenerator) {....raises: [
Exception, KeyError, ValueError, OSError, IOError, ERecoverableError], tags: [
RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
forbids: [].} - Source Edit
proc genIfDispatcher(g: ModuleGraph; methods: seq[PSym]; relevantCols: IntSet;
idgen: IdGenerator): PSym {....raises: [KeyError, Exception,
ValueError, OSError, IOError, ERecoverableError], tags: [ReadDirEffect,
RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect], forbids: [].} - Source Edit
proc getDispatcher(s: PSym): PSym {....raises: [], tags: [], forbids: [].} - can return nil if is has no dispatcher. Source Edit
proc methodCall(n: PNode; conf: ConfigRef): PNode {....raises: [Exception,
ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
forbids: [].} - Source Edit
proc methodDef(g: ModuleGraph; idgen: IdGenerator; s: PSym) {....raises: [
Exception, ValueError, KeyError, OSError, IOError, ERecoverableError], tags: [
RootEffect, ReadDirEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect],
forbids: [].} - Source Edit
proc relevantCol(methods: seq[PSym]; col: int): bool {....raises: [Exception],
tags: [RootEffect], forbids: [].} - Source Edit
proc sortBucket(a: var seq[PSym]; relevantCols: IntSet) {....raises: [Exception],
tags: [RootEffect], forbids: [].} - Source Edit