src/vms/nims/nimsvm

Source   Edit  

Types

NimSVm = ref object of Vm
Source   Edit  

Procs

proc newNimSVm(tmpPath: string = getTempDir()): NimSVm {....raises: [OSError,
    Exception, ValueError, KeyError, IOError, ERecoverableError, EOFError,
    ESuggestDone], tags: [ReadDirEffect, RootEffect, WriteIOEffect,
                          ReadIOEffect, ReadEnvEffect, WriteDirEffect,
                          TimeEffect, ExecIOEffect], forbids: [].}
Creates a new Virtual Machine that uses nim script to run commands. Strengths: maximizes speed. Weaknesses: it does not allow integration with native code. Source   Edit  

Methods

method runCommand(self: NimSVm; command: string): (string, int) {.
    ...raises: [IOError, KeyError, Exception, ValueError, ERecoverableError], tags: [
    WriteIOEffect, ReadIOEffect, ReadDirEffect, RootEffect, ReadEnvEffect,
    WriteDirEffect, TimeEffect, ExecIOEffect], forbids: [].}
Source   Edit  
method updateDeclarations(self: NimSVm): (string, int) {....raises: [IOError], tags: [
    WriteIOEffect, ReadDirEffect, RootEffect, ReadIOEffect, ReadEnvEffect,
    WriteDirEffect, TimeEffect, ExecIOEffect], forbids: [].}
Source   Edit  
method updateImports(self: NimSVm): (string, int) {....raises: [IOError], tags: [
    WriteIOEffect, ReadDirEffect, RootEffect, ReadIOEffect, ReadEnvEffect,
    WriteDirEffect, TimeEffect, ExecIOEffect], forbids: [].}
Source   Edit  
method updateState(self: NimSVm): (string, int) {.
    ...raises: [IOError, KeyError, Exception, ValueError, ERecoverableError], tags: [
    ReadIOEffect, WriteIOEffect, ReadDirEffect, RootEffect, ReadEnvEffect,
    WriteDirEffect, TimeEffect, ExecIOEffect], forbids: [].}
Source   Edit