Artifact [6510a3168e]

Artifact 6510a3168ed2b29e2d2673e89315affef19d3fcd:

Wiki page [Documentation] by rkeene on 2014-06-17 05:07:32.
D 2014-06-17T05:07:32.911
L Documentation
N text/x-markdown
P 7c8f1965682b83a402d3fb9c5ba761f68277ff80
U rkeene
W 1318
Manual Page
===========

`package require tcc4tcl`

tcc4tcl::cproc
--------------
Creates a Tcl procedure that calls C code.

Synopsis:

  1.  `tcc4tcl::cproc <procName> <argList> <returnType> <code>`
    1. `<procName>` is the name of the Tcl procedure to create
    1. `<argList>` is a list of arguments and their types for the C function;
      1. The list is in the format of: type1 name1 type2 name2 ... typeN nameN
      1. The supported types are:
         1. Tcl_Interp*
         1. int
         1. long
         1. float
         1. double
         1. char*
         1. Tcl_Obj*
         1. void*
    1. `<returnType>` is the return type for the C function
      1. The supported types are:
         1. void: No return value
         1. ok: Return TCL\_OK or TCL_ERROR
         1. int
         1. long 
    
         1. float
         1. double
         1. char*: TCL_STATIC string (immutable from C)
         1. string, dstring: TCL_DYNAMIC string (mutable from C)
         1. vstring: TCL_VOLATILE string (mutable from C)
         1. default: Tcl_Obj*, a Tcl Object
    1. `<code>` is the C code that comprises the function

Example:

  1.  `tcc4tcl::cproc add {int a int b} int { return(a+b); }`


tcc4tcl::ccode
--------------

tcc4tcl::cdata
--------------
Z f439a851ebe0bc72c84529186a1daa0e