Sequences - Xref - Make - eval


App: regression/framework Page: expressions/a_value_spliced_after_a_string_of_the_other_quote_is_text
PHP
expressions/a_value_spliced_after_a_string_of_the_other_quote_is_text.php
HTML
expressions/a_value_spliced_after_a_string_of_the_other_quote_is_text.pad
Result
<?php

// A value spliced into the quoted expression of where= or eval= is a string of it also when
// a string of the other quote stands before it - '"': the quotes were counted, the odd one
// made the value seem to stand in a string already, and it went in bare - the request value
// 1 or php:gettype() eq 3 became part of the condition, true for every row, and of the
// eval expression.

$q = '1 or php:gettype() eq 3';
$g = 'php:gettype()';
$xs = [ [ 'n' => 1, 's' => 'a' ], [ 'n' => 3, 's' => 'b' ] ];

?>
W[{xs where='$s ne \'"\' and $n eq {$q}'}{$n} {/xs}] E[{sequence '1..2', eval='@ . \'-\' . {$q}'}{$sequence} {/sequence}] F[{sequence '1..2', eval='@ . \'"\' . {$g}'}{$sequence}{/sequence}]

App: regression/framework Page: sequence/a_play_over_a_store_is_held_to_the_time_a_run_has
PHP
sequence/a_play_over_a_store_is_held_to_the_time_a_run_has.php
HTML
sequence/a_play_over_a_store_is_held_to_the_time_a_run_has.pad
Result
<?php

$padSeqMaxSeconds
= 0.01;

?>
{sequence '1..20000', push='s'/}[{pull:s make, eval='@*2', count}{if $sequence lt 20000}cut{else}whole{/if}{/pull:s}][{sequence '1..20000', count}{$sequence}{/sequence}]

App: regression/framework Page: sequence/a_shift_in_the_eval_of_a_pull_of_the_same_store_leaves_the_pull_its_rows
PHP
HTML
sequence/a_shift_in_the_eval_of_a_pull_of_the_same_store_leaves_the_pull_its_rows.pad
Result
{sequence '1..4', add=10, push='a'/}[{pull:a eval='@ + php:count(sequence:shift("a")) * 0'}{$sequence}:{$add} {/pull:a}|{pull:a}{$sequence} {/pull:a}]{sequence '1..4', add=10, push='a'/}[{pull:a first=4, eval='@ + php:count(sequence:pop("a")) * 0'}{$sequence}:{$add} {/pull:a}]{sequence '1..4', add=10, push='a'/}[{pull:a shift=1, eval='@ + php:count(sequence:shift("a")) * 0'}{$sequence}:{$add} {/pull:a}|{pull:a}{$sequence}:{$add} {/pull:a}]

App: regression/framework Page: sequence/a_value_spliced_into_any_eval_expression_is_text
PHP
sequence/a_value_spliced_into_any_eval_expression_is_text.php
HTML
sequence/a_value_spliced_into_any_eval_expression_is_text.pad
Result
<?php

// A value spliced into the quoted expression of the eval sequence is a string of it in every
// spelling - {eval '...'}, {sequence:eval '...'}, make='eval|...', sequence:eval(2, '...') -
// as in eval='...': only eval= quoted it, and in the others the value became part of the
// expression and called the function it named.

$q = 'php:gettype()';

?>
e[{eval '@ . {$q}', rows=2}{$eval} {/eval}] s[{sequence:eval '@ . {$q}', rows=2}{$eval} {/sequence:eval}] m[{sequence '1..2', make='eval|@ . {$q}'}{$sequence} {/sequence}] c[{echo sequence:eval(2, '@ . {$q}')}]

App: regression/framework Page: sequence/an_action_in_an_expression_reads_no_option_of_the_tag_around_it
PHP
HTML
sequence/an_action_in_an_expression_reads_no_option_of_the_tag_around_it.pad
Result
[{sequence '1..3', eval='php:count(sequence:trim([1,2,3,4,5,6]))'}{$sequence} {/sequence}][{sequence '1..3', trim, right=1, eval='php:count(sequence:trim([1,2,3,4,5,6]))'}{$sequence} {/sequence}][{sequence '1..3', randomize=3, duplicates, eval='php:count(sequence:randomize([1,2,3], 5))'}{$sequence} {/sequence}][{sequence '1..6', trim, right=2}{$sequence} {/sequence}]

App: regression/framework Page: sequence/an_action_run_by_an_expression_inside_a_tag_keeps_the_lists_of_the_tag_s_actions
PHP
HTML
sequence/an_action_run_by_an_expression_inside_a_tag_keeps_the_lists_of_the_tag_s_actions.pad
Result
[{sequence '1..3', append=[9, 8], eval='php:count(sequence:sort([1,2])) + @'}{$sequence} {/sequence}][{sequence '1..3', intersection=[3, 4], eval='php:count(sequence:sum([1,2])) + @'}{$sequence} {/sequence}][{sequence '1..3', append=[9, 8], eval='@ + 2'}{$sequence} {/sequence}]

App: regression/framework Page: sequence/an_eval_expression_is_refused_only_for_a_value_that_could_run
PHP
sequence/an_eval_expression_is_refused_only_for_a_value_that_could_run.php
HTML
sequence/an_eval_expression_is_refused_only_for_a_value_that_could_run.pad
Result
<?php

// The eval sequence refuses an expression only for a spliced value that could call code or
// read a variable - a (, a $ or a : in it: a - or a * 2 printed in a tag's parameters
// elsewhere on the page, and a {define} written into the expression, made eval='@ - 1',
// eval='@ * 2' and eval='@ {twice}' refusals.

$op = '* 2';
$dash = '-';

?>
op=[{echo '{$op}'}] result=[{sequence '1..3', eval='@ * 2'}{$sequence} {/sequence}] a=[{echo '{$dash}'}] b=[{sequence '5..3', eval='@ - 1'}{$sequence} {/sequence}] {define 'twice'}* 2{/define}c=[{sequence '1..3', eval='@ {twice}'}{$sequence} {/sequence}]

App: regression/framework Page: sequence/an_eval_written_by_the_template_runs_a_spliced_value_is_text
PHP
sequence/an_eval_written_by_the_template_runs_a_spliced_value_is_text.php
HTML
sequence/an_eval_written_by_the_template_runs_a_spliced_value_is_text.pad
Result
<?php

// eval= written by the template runs; a value spliced into its quotes is a string of the
// expression, never part of it - it called the function the value named.

$q = 'php:gettype()';

?>
a[{sequence '1..3', eval='@ * 2'}{$sequence} {/sequence}] b[{sequence '1..3', make='eval|@ * 10'}{$sequence} {/sequence}] c[{sequence '1..2', eval='@ . {$q}'}{$sequence} {/sequence}]

App: regression/framework Page: sequence/an_expression_inside_a_run_leaves_the_run_alone
PHP
HTML
sequence/an_expression_inside_a_run_leaves_the_run_alone.pad
Result
[{sequence 5, eval='sequence:square(@)'}{$sequence} {/sequence}][{sequence 3}{$sequence}:{echo sequence:square(2)}:{$sequence} {/sequence}]

App: regression/framework Page: sequence/an_expression_inside_resume_is_its_own_run
PHP
HTML
sequence/an_expression_inside_resume_is_its_own_run.pad
Result
[{sequence '1..5', push='s'}{/sequence}{resume add=sequence:prime(3)}{pull:s}{$s} {/pull:s}][{sequence '1..3', push='t'}{/sequence}{resume eval='sequence:square(@)'}{pull:t}{$t} {/pull:t}][{resume add=sequence:fibonacci(6)}{pull:t}{$t} {/pull:t}]

App: regression/framework Page: sequence/membership_hands_the_parameter_over_as_a_value
PHP
HTML
sequence/membership_hands_the_parameter_over_as_a_value.pad
Result
[{sequence '0..6', flag, eval='@*2'}{$sequence}{/sequence}][{sequence '0..6', keep, eval='@ * 3'}{$sequence} {/sequence}][{sequence '1..5', make, eval='@*2', keep, eval='@*4'}{$sequence} {/sequence}]

App: sequence Page: keepRemoveFlag/eval

App: sequence Page: play/double/eval

App: sequence Page: play/single/eval

App: sequence Page: specials/eval