This module implements code generation for methods.
Procs
proc generateIfMethodDispatchers(g: ModuleGraph; idgen: IdGenerator) {....raises: [ Exception, OSError, KeyError, ValueError, IOError, ERecoverableError], tags: [ RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- Source Edit
proc genIfDispatcher(g: ModuleGraph; methods: seq[PSym]; relevantCols: IntSet; idgen: IdGenerator): PSym {....raises: [Exception, OSError, KeyError, ValueError, IOError, ERecoverableError], tags: [RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- Source Edit
proc getDispatcher(s: PSym): PSym {....raises: [Exception, OSError, KeyError, ValueError, IOError], tags: [RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- can return nil if is has no dispatcher. Source Edit
proc methodDef(g: ModuleGraph; idgen: IdGenerator; s: PSym) {....raises: [ Exception, OSError, KeyError, ValueError, IOError, ERecoverableError], tags: [ RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- Source Edit
proc relevantCol(methods: seq[PSym]; col: int): bool {. ...raises: [Exception, OSError, KeyError, ValueError, IOError], tags: [ RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- Source Edit
proc sortBucket(a: var seq[PSym]; relevantCols: IntSet) {. ...raises: [Exception, OSError, KeyError, ValueError, IOError], tags: [ RootEffect, WriteIOEffect, ReadEnvEffect, ReadIOEffect, ReadDirEffect], forbids: [].}
- Source Edit