26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
-
-
-
-
+
+
+
+
|
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 -- use this for constants)
1. string, dstring: TCL_DYNAMIC string (allocated from Tcl_Alloc, will be managed by Tcl)
1. vstring: TCL_VOLATILE string (mutable from C, will be copied be Tcl -- use this for local variables)
1. default: Tcl_Obj*, a Tcl Object
1. char*: TCL\_STATIC string (immutable from C -- use this for constants)
1. string, dstring: TCL\_DYNAMIC string (allocated from Tcl\_Alloc, will be managed by Tcl)
1. vstring: TCL\_VOLATILE string (mutable from C, will be copied be Tcl -- use this for local variables)
1. default: Tcl\_Obj*, a Tcl Object
1. `<code>` is the C code that comprises the function
Examples:
1. Create a Tcl procedure called "add" which accepts 2 integers (a, b) and returns a long:
1. `tcc4tcl::cproc add {int a int b} long { return(a+b); }`
2. Create a Tcl procedure called "mkdir" which accepts a Tcl_Obj* and returns a return code:
|