File: deleg_method.man

package info (click to toggle)
tcllib 1.20%2Bdfsg-1
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 68,064 kB
  • sloc: tcl: 216,842; ansic: 14,250; sh: 2,846; xml: 1,766; yacc: 1,145; pascal: 881; makefile: 107; perl: 84; f90: 84; python: 33; ruby: 13; php: 11
file content (49 lines) | stat: -rw-r--r-- 1,575 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
[comment {-*- tcl -*- doctools manpage}]
[manpage_begin deleg_method n 0.2]
[keywords comm]
[keywords delegation]
[keywords interpreter]
[keywords method]
[keywords snit]
[copyright {2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>}]
[moddesc   {Interpreter utilities}]
[titledesc {Creation of comm delegates (snit methods)}]
[category  {Programming tools}]
[require Tcl 8.3]
[require snit [opt 1.1]]
[require interp::delegate::method [opt 0.2]]
[description]
[para]

This package provides a single command for use within [package snit]
type definition (i.e. actually a [cmd snit::macro]) for the convenient
creation of methods which delegate the actual work to a remote
location via a "channel" created by the package [package comm].

[section API]
[list_begin definitions]

[call [cmd ::interp::delegate::method] [opt [option -async]] [arg name] [arg arguments] [arg comm] [arg id]]

This commands creates a method which is named by [arg name]. All
invokations of this method will delegate the actual work to the remote
location identified by the comm channel [arg comm] and the endpoint
[arg id].

[para]

The name of the remote method invoked by the delegator is identical to
the name of the method itself.

[para]

Normally the generated method marshalls the [arg arguments], and
returns the result from the remote method as its own result. If
however the option [option -async] was specified then the generated
method will not wait for a result and return immediately.

[list_end]

[vset CATEGORY interp]
[include ../common-text/feedback.inc]
[manpage_end]