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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
<?cs def:Date._weekday(day,four) ?>
<?cs each:wday = Days ?>
<?cs if:wday == day ?>
<?cs var:wday.Abbr ?>
<?cs /if ?>
<?cs /each ?>
<?cs if:day == "6" ?>
<?cs var:Days.0.Abbr ?>
<?cs elseif:day == "0" ?>
<?cs var:Days.1.Abbr ?>
<?cs elseif:day == "1" ?>
<?cs var:Days.2.Abbr ?>
<?cs elseif:day == "2" ?>
<?cs var:Days.3.Abbr ?>
<?cs elseif:day == "3" ?>
<?cs var:Days.4.Abbr ?>
<?cs elseif:day == "4" ?>
<?cs var:Days.5.Abbr ?>
<?cs elseif:day == "5" ?>
<?cs var:Days.6.Abbr ?>
<?cs /if ?>
<?cs /def ?>
<?cs def:echo(wow) ?>
<?cs var:$wow ?>
<?cs /def ?>
before weekday
<?cs call:Date._weekday(Wow.Foo,#5) ?>
before echo
echo a variable: 3
<?cs call:echo(Wow.Foo) ?>
echo a string: hellow world
<?cs call:echo("hello world") ?>
echo a number: 5
<?cs call:echo(#5) ?>
<?cs def:call_echo(wow) ?>
<?cs call:echo(wow) ?>
<?cs /def ?>
echo a variable: 3
<?cs call:call_echo(Wow.Foo) ?>
echo a string: hellow world
<?cs call:call_echo("hello world") ?>
echo a number: 5
<?cs call:call_echo(#5) ?>
<?cs def:echo2(bar) ?>
<?cs var:wow ?>
<?cs /def ?>
<?cs def:call_echo2(wow, weird) ?>
<?cs call:echo2(weird) ?>
<?cs /def ?>
these tests show that local variables are live in sub calls
echo a variable: 3
<?cs call:call_echo2(Wow.Foo, "error") ?>
echo a string: hellow world
<?cs call:call_echo2("hello world", "error") ?>
echo a number: 5
<?cs call:call_echo2(#5, "error") ?>
after echo
<?cs def:print_day(d) ?>
<?cs var:d ?> == <?cs var:d.Abbr ?>
<?cs /def ?>
testing macro calls in local vars in an each
<?cs each:day=Days ?>
<?cs call:print_day(day) ?>
<?cs call:echo(day.Abbr) ?>
<?cs /each ?>
|