That's great. I tried it and worked really well. I like that it just works. I 
don't like much that the generated binding requires about 3 times more lines:
    
    
    when not declared(pixwrite):
      proc pixwrite*(fname: cstring; pix: ptr Pix_520094250; format: 
lint32_520094097): lok_520094087 {.
          cdecl, importc: "pixWrite".}
    else:
      static :
        hint("Declaration of " & "pixwrite" & " already exists, not 
redeclaring")
    
    
    Run

versus:
    
    
    proc pixWrite*(fname: cstring; pix: ptr Pix; format: LInt32): LOk {.
        importc: "pixWrite".}
    
    
    Run

I wonder if the `when`/`else` can be deactivated. Just to have the API in a 
more compact way. I don't like much the naming of the types, but I get that 
come fixed with `sed`.

I will try it in the future for sure.

Any plan to the same with C++ or is not possible? 

Reply via email to