1[comment {-*- tcl -*- doctools manpage}] 2[manpage_begin deleg_method n 0.2] 3[copyright {2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>}] 4[moddesc {Interpreter utilities}] 5[titledesc {Creation of comm delegates (snit methods)}] 6[category {Programming tools}] 7[require Tcl 8.3] 8[require snit [opt 1.1]] 9[require interp::delegate::method [opt 0.2]] 10[description] 11[para] 12 13This package provides a single command for use within [package snit] 14type definition (i.e. actually a [cmd snit::macro]) for the convenient 15creation of methods which delegate the actual work to a remote 16location via a "channel" created by the package [package comm]. 17 18[section API] 19[list_begin definitions] 20 21[call [cmd ::interp::delegate::method] [opt [option -async]] [arg name] [arg arguments] [arg comm] [arg id]] 22 23This commands creates a method which is named by [arg name]. All 24invokations of this method will delegate the actual work to the remote 25location identified by the comm channel [arg comm] and the endpoint 26[arg id]. 27 28[para] 29 30The name of the remote method invoked by the delegator is identical to 31the name of the method itself. 32 33[para] 34 35Normally the generated method marshalls the [arg arguments], and 36returns the result from the remote method as its own result. If 37however the option [option -async] was specified then the generated 38method will not wait for a result and return immediately. 39 40[list_end] 41 42[section {BUGS, IDEAS, FEEDBACK}] 43 44This document, and the package it describes, will undoubtedly contain 45bugs and other problems. 46 47Please report such in the category [emph interp] of the 48[uri {http://sourceforge.net/tracker/?group_id=12883} {Tcllib SF Trackers}]. 49 50Please also report any ideas for enhancements you may have for either 51package and/or documentation. 52 53 54[keywords interpreter delegation comm method snit] 55[manpage_end] 56