File: EnvironmentRedirect.schelp

package info (click to toggle)
supercollider 1%3A3.6.6~repack-2-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 23,792 kB
  • ctags: 25,269
  • sloc: cpp: 177,129; lisp: 63,421; ansic: 11,297; python: 1,787; perl: 766; yacc: 311; sh: 286; lex: 181; ruby: 173; makefile: 168; xml: 13
file content (40 lines) | stat: -rw-r--r-- 1,387 bytes parent folder | download
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
class:: EnvironmentRedirect
summary:: base class for environment redirects
categories:: Libraries>JITLib>Environments
related:: Classes/Environment

description::
Environment that redirects access ( strong::put:: ) and assignment ( strong::at:: ).

ClassMethods::

method::new
create new redirect, if envir is given it is used.

subsection:: replacing Environment class methods

EnvironmentRedirect implements some of the interface of link::Classes/Environment::, which it can replace where needed.

method::push, pop, make, use

InstanceMethods::

method::envir
return or replace the source environment

subsection::redirecting objects

Overriding these methods, one can redirect where objects go when they are assigned to the space. This is done for example in link::Classes/LazyEnvir:: and link::Classes/ProxySpace::.

method::at, put, localPut, removeAt

subsection:: replacing Environment instance methods

EnvironmentRedirect implements some of the interface of link::Classes/Environment::, which it can replace where needed.

method::push, pop, make, use, do, clear, keysValuesDo, keysValuesArrayDo, findKeyForValue, sortedKeysValuesDo, choose, know, doesNotUnderstand


section::Networking

EnvironmentRedirect and its subclasses can be used to dispatch assignment over a network. To do this, a dispatch function can be supplied - see Public in strong::JITLibExtensions:: quark.