Hi,

When you create a switch node switch([ (p1,s1), (p2,s2), ... ]) all
the sources and predicates have to be evaluated as well, to give the
switch function what it expects, namely a list of functions and
sources. For example in your script, you have an item (check_blank,
play_blank()), when it gets evaluated, the function check_blank
evaluates to itself but evaluating play_blank() is done by calling the
function play_blank().

A simpler way to say it is that the predicate function is called
everytime a new source may be selected, but the source creation
function is called only once, then the resulting source is kept
forever.

But with the first explanation I want to insist that there is no black
magic about what is evaluated once and what is evaluated many times:
it all comes from what objects are. If you pass a function to switch,
it may call that function several times. If you pass a source, it
doesn't know whether that source was built directly or using some
function, so there's no way for it to call that function again.

I hope this clarifies things. Now I must confess that I didn't read
carefully all your script (I'm quickly writing this before heading out
to work) so I'm not sure of what you're trying to do, but there's a
good chance that you'll be able to do it without requiring human
intervention through telnet.

Cheers,
-- 
David

------------------------------------------------------------------------------
Get a FREE DOWNLOAD! and learn more about uberSVN rich system, 
user administration capabilities and model configuration. Take 
the hassle out of deploying and managing Subversion and the 
tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to