Objects/methodobject

Source   Edit  

Types

NFunc {.pure.} = enum
  BltinFunc, UnaryMethod, BinaryMethod, TernaryMethod, BltinMethod
Source   Edit  
PyNimFuncObject = ref object of PyObject
  name*: PyStrObject
  self*: PyObject
  kind*: NFunc
  fun*: int
Source   Edit  

Lets

pyNimFuncObjectType {.inject.} = newPyType("nimfunc", pyObjectType)
Source   Edit  

Procs

proc callPyNimFuncObjectMagic(selfNoCast: PyObject;
                              args: openArray[PyObject] = @[];
                              kwargs: PyKwArgType = nil): PyObject {.cdecl,
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFunc(fun: BltinFunc; name: PyStrObject): PyNimFuncObject {.
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFunc(fun`gensym28: UnaryMethod; name`gensym28: PyStrObject;
                  self`gensym28: PyObject = nil): PyNimFuncObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFunc(fun`gensym31: BinaryMethod; name`gensym31: PyStrObject;
                  self`gensym31: PyObject = nil): PyNimFuncObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFunc(fun`gensym34: TernaryMethod; name`gensym34: PyStrObject;
                  self`gensym34: PyObject = nil): PyNimFuncObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFunc(fun`gensym37: BltinMethod; name`gensym37: PyStrObject;
                  self`gensym37: PyObject = nil): PyNimFuncObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc newPyNimFuncSimple(): PyNimFuncObject {.cdecl, ...raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc ofExactPyNimFuncObject(obj`gensym0: PyObject): bool {.cdecl, inline,
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc ofPyNimFuncObject(obj`gensym0: PyObject): bool {.cdecl, inline, ...raises: [],
    tags: [], forbids: [].}
Source   Edit