This shows you the differences between two versions of the page.
— |
tcl_function [2007/02/20 03:54] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | # $EPIC: tcl_function.txt,v 1.2 2007/02/20 03:54:29 jnelson Exp $ | ||
+ | ======Synopsis:====== | ||
+ | $tcl(//tcl statement//) | ||
+ | |||
+ | ======Purpose:====== | ||
+ | If the client was linked with an embedded tcl interpreter, the //tcl statement// | ||
+ | shall be executed by tcl. If the client was not linked against tcl, then no | ||
+ | action shall take place. | ||
+ | |||
+ | As all //tcl statement//s resolve to a (tcl) value, that (tcl) | ||
+ | value shall be converted into a string and returned. | ||
+ | This means the return value shall not be "binary data" (have embedded nuls) | ||
+ | |||
+ | If the //tcl statement// has an error, the result is undefined, but usually | ||
+ | an error message is output to the window and the empty string is returned. | ||
+ | |||
+ | Please remember that all function call arguments are subject to ircII | ||
+ | expansion BEFORE the function call occurs. You must ensure that any chars | ||
+ | that are special to both ircII and ruby are quoted so ircII doesn't try | ||
+ | to honor them. | ||
+ | |||
+ | You can call back to the client from ruby. See /[[tcl command|tcl]] for | ||
+ | details. | ||
+ | |||
+ | ======Practical:====== | ||
+ | $tcl() is useful for loading tcl scripts and modules, defining | ||
+ | simple tcl functions, retrieving variables from within tclspace and | ||
+ | other general maintenance of the tcl environment. | ||
+ | |||
+ | ======Returns:====== | ||
+ | The Tcl_GetStringResult() result after calling Tcl_Eval() on //tcl statement//. | ||
+ | |||
+ | ======Examples:====== | ||
+ | Someone want to provide me examples? | ||
+ | |||
+ | ======History:====== | ||
+ | The TCL function first appeared in EPIC4-1.1.8. | ||
+ | |||