Objects/codeobject

Source   Edit  

Types

OpArg = int
Source   Edit  
PyCodeObject = ref object of PyObject
  code*: seq[(OpCode, OpArg)]
  lineNos*: seq[int]
  constants*: seq[PyObject]
  names*: seq[PyStrObject]
  localVars*: seq[PyStrObject]
  cellVars*: seq[PyStrObject]
  freeVars*: seq[PyStrObject]
  argNames*: seq[PyStrObject]
  argScopes*: seq[(Scope, int)]
  codeName*: PyStrObject
  fileName*: PyStrObject
Source   Edit  

Lets

pyCodeObjectType {.inject.} = newPyType("code", pyObjectType)
Source   Edit  

Procs

proc addOpCode(code: PyCodeObject;
               instr: tuple[opCode: OpCode, opArg: OpArg, lineNo: int]) {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc argcountPyCodeObjectGetter(selfNoCast: PyObject): PyObject {.cdecl,
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc argcountPyCodeObjectSetter(selfNoCast: PyObject; other: PyObject): PyObject {.
    cdecl, ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc code_adaptive(self: PyCodeObject): PyBytesObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc codePyCodeObjectGetter(selfNoCast: PyObject): PyObject {.cdecl, ...raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc codePyCodeObjectSetter(selfNoCast: PyObject; other: PyObject): PyObject {.
    cdecl, ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc firstlinenoPyCodeObjectGetter(selfNoCast: PyObject): PyObject {.cdecl,
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc firstlinenoPyCodeObjectSetter(selfNoCast: PyObject; other: PyObject): PyObject {.
    cdecl, ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc len(code: PyCodeObject): int {.inline, ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc newPyCode(codeName, fileName: PyStrObject; length: int): PyCodeObject {.
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyCodeSimple(): PyCodeObject {.cdecl, ...raises: [], tags: [RootEffect],
                                       forbids: [].}
Source   Edit  
proc ofExactPyCodeObject(obj`gensym0: PyObject): bool {.cdecl, inline,
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc ofPyCodeObject(obj`gensym0: PyObject): bool {.cdecl, inline, ...raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc reprPyCodeObjectMagic(selfNoCast: PyObject): PyObject {.cdecl, ...raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc SUnpython_reprPyCodeObjectMethod(selfNoCast: PyObject;
                                      args: openArray[PyObject] = @[];
                                      kwargs: PyKwArgType = nil): PyObject {.
    cdecl, ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  

Methods

method `$`(code: PyCodeObject): string {....raises: [], tags: [RootEffect],
    forbids: [].}
Source   Edit