diff --git a/pd/doc/5.reference/list-help.pd b/pd/doc/5.reference/list-help.pd index 160df0eb19fcbc61c9a9ac235421801f7efc3cfa..5e74bcbc850359c98eee57be8d8658597e0f672e 100644 --- a/pd/doc/5.reference/list-help.pd +++ b/pd/doc/5.reference/list-help.pd @@ -1,4 +1,4 @@ -#N canvas 398 77 555 619 10; +#N canvas 3 60 555 619 10; #X obj 0 635 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0 14 -228856 -66577 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header list 3 12 0 18 -204280 @@ -21,9 +21,9 @@ length; ; #X text 12 150 RELEASE_DATE 2005; #X restore 500 638 pd META; -#X obj 0 237 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0 +#X obj 0 187 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0 13 -228856 -1 0; -#X obj 0 288 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12 +#X obj 0 238 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12 0 13 -228856 -1 0; #X obj 0 546 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12 0 13 -228856 -1 0; @@ -36,7 +36,7 @@ length; #X obj 112 42 pack; #X obj 152 42 unpack; #X restore 102 639 pd Related_objects; -#X obj 78 246 cnv 17 3 17 empty \$0-pddp.cnv.let.n n 5 9 0 16 -228856 +#X obj 78 196 cnv 17 3 17 empty \$0-pddp.cnv.let.n n 5 9 0 16 -228856 -162280 0; #X obj 78 153 cnv 17 3 17 empty \$0-pddp.cnv.let.n n 5 9 0 16 -228856 -162280 0; @@ -95,7 +95,7 @@ to the outlet.; #X connect 23 0 16 1; #X connect 24 0 16 1; #X connect 25 0 16 1; -#X restore 102 365 pd append; +#X restore 102 315 pd append; #N canvas 89 83 428 592 about-lists 0; #X obj 22 567 print message; #X msg 22 380 list x.wav 44100; @@ -147,13 +147,13 @@ implied if the first data item is a number.; #X connect 12 0 13 0; #X restore 101 586 pd about-lists; #X text 11 23 building and using variable-length messages; -#X text 80 307 1); +#X text 80 257 1); #X text 80 514 n); -#X text 180 365 append - append the second list to the first; -#X text 180 409 split - split a list in two; -#X text 180 387 prepend - prepend the second list to the first; -#X text 180 453 length - output the number of items in a list; -#X text 180 431 trim - trim the "list" selector off; +#X text 180 315 append - append the second list to the first; +#X text 180 359 split - split a list in two; +#X text 180 337 prepend - prepend the second list to the first; +#X text 180 403 length - output the number of items in a list; +#X text 180 381 trim - trim the "list" selector off; #X obj 212 98 list; #X msg 233 68 rice; #X msg 212 46 beans; @@ -399,7 +399,7 @@ sent to the outlet.; #X connect 19 0 24 1; #X connect 20 0 24 1; #X connect 24 0 25 0; -#X restore 102 387 pd prepend; +#X restore 102 337 pd prepend; #N canvas 1 82 555 530 split 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header empty 3 12 0 14 -204280 -1 0; @@ -465,7 +465,7 @@ it is sent in its entirety to the rightmost outlet.; #X connect 19 0 10 0; #X connect 20 0 10 0; #X connect 21 0 10 0; -#X restore 102 409 pd split; +#X restore 102 359 pd split; #N canvas 1 82 555 481 trim 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header empty 3 12 0 14 -204280 -1 0; @@ -524,7 +524,7 @@ as bang); #X connect 15 0 12 0; #X connect 16 0 12 0; #X connect 26 0 12 0; -#X restore 102 431 pd trim; +#X restore 102 381 pd trim; #N canvas 2 128 555 490 length 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header empty 3 12 0 14 -204280 -1 0; @@ -566,9 +566,9 @@ list.; #X connect 14 0 16 0; #X connect 15 0 16 0; #X connect 16 0 17 0; -#X restore 102 453 pd length; -#X text 98 307 symbol atom; -#X text 98 322 float; +#X restore 102 403 pd length; +#X text 98 257 symbol atom; +#X text 98 272 float; #N canvas 51 146 428 419 list_conversion_in_Pd 0; #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0 14 -204280 -1 0; @@ -602,24 +602,18 @@ atom is treated as a symbol.; #X connect 10 0 9 0; #X connect 13 0 10 0; #X restore 241 586 pd list_conversion_in_Pd; -#X text 170 307 - (optional) if no creation argument is given \, or +#X text 170 257 - (optional) if no creation argument is given \, or if the first creation argument is a number \, [list] will behave like [list append]. Otherwise \, one of the following symbols may be given as arguments (see subpatches for more info):; -#X text 98 245 [list] family objects always output a list. See the +#X text 98 195 [list] family objects always output a list. See the "list_conversion_in_Pd" subpatch below for how lists are interpreted by other objects.; #X text 98 514 depending on what the first creation argument is \, other creation arguments may be specified.; -#X text 98 154 See subpatches under the heading "arguments" for more -details. With the exception of the right inlet of [list split] \, All -[list] objects will convert incoming non-list messages to lists (e.g. -\, "set 5" will become "list set 5"). A bang message is converted to -an empty list (i.e. \, "list") \, and "symbol foo" is converted to -"list foo".; #X obj 4 638 pddp/pddplink all_about_help_patches.pd -text Usage Guide ; -#X text 180 475 cat - build a list by accumulating elements; +#X text 180 425 cat - build a list by accumulating elements; #N canvas 1 112 555 488 cat 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header empty 3 12 0 14 -204280 -1 0; @@ -669,7 +663,85 @@ list is sent to the outlet.; #X connect 15 0 23 0; #X connect 21 0 23 1; #X connect 23 0 22 0; -#X restore 102 475 pd cat; +#X restore 102 425 pd cat; +#X text 98 154 See subpatches under the heading "arguments"; +#N canvas 3 79 552 344 from/to 0; +#X symbolatom 64 254 10 0 0 0 - - -, f 10; +#X obj 64 277 list fromsymbol; +#X text 83 9 fromsymbol and tosymbol - symbols to and from lists of +numeric character codes, f 41; +#X msg 230 232 115 101 118 101 110 116 101 101 110; +#X obj 229 260 list tosymbol; +#X obj 64 301 print from-symbol; +#X symbolatom 229 286 10 0 0 0 - - -, f 10; +#X msg 64 228 symbol seventeen; +#X text 43 162 Neither of these objects promote non-list messages to +lists (that would make little sense in this context).; +#X text 25 66 These allow you to do string manipulations (such as scanning +a filename for '/' characters). They convert a list of numbers (which +might be ASCII or might be unicode if \, for example \, they represent +a filename on a non-ASCII machine) to or from a symbol., f 63; +#X connect 0 0 1 0; +#X connect 1 0 5 0; +#X connect 3 0 4 0; +#X connect 4 0 6 0; +#X connect 7 0 0 0; +#X restore 102 474 pd from/to; +#N canvas 3 60 629 666 store 0; +#X floatatom 17 137 5 0 0 0 - - -, f 5; +#X msg 17 112 1 2 3; +#X msg 17 85 list cis boom bah; +#X msg 17 162 bang; +#X msg 176 493 bang; +#X msg 176 443 list x y z; +#X msg 175 417 go dog go; +#X msg 174 467 4 5 6 and 7; +#X text 182 80 list starting with symbol; +#X text 181 99 (needs explicit "list" selector); +#X text 69 135 number is one-element list; +#X text 72 112 numeric list; +#X text 277 468 (note: only the first item; +#X text 282 485 need be a number to make this; +#X text 284 503 a list.); +#X text 171 525 <- creation args initialize the list to prepend; +#X text 20 6 Store - put together or break apart a list to/from sublists +; +#X text 270 414 right inlet can take non-list messages; +#X text 34 45 lists in first inlet outputs the concatenation of incoming +message with stored list:; +#X text 46 223 other messages:; +#X msg 17 280 prepend 1 2 3; +#X text 133 279 prepend a list to the stored list; +#X msg 17 253 append 1 2 3; +#X text 129 255 append a list to the stored list; +#X obj 17 523 list store 1 2; +#X obj 17 587 print store-left; +#X obj 126 562 print store-right; +#X text 105 309 output a sublist \, starting with item 1 (counting +from zero) \, of length 3 If there are fewer than 3 items available +a "bang" is sent to right outlet.; +#X text 158 588 output of "range" message on success; +#X text 276 561 bang if "range" message fails; +#X text 67 164 bang is zero-element list - this output the stored list +; +#X msg 17 308 get 1 3; +#X connect 0 0 24 0; +#X connect 1 0 24 0; +#X connect 2 0 24 0; +#X connect 3 0 24 0; +#X connect 4 0 24 1; +#X connect 5 0 24 1; +#X connect 6 0 24 1; +#X connect 7 0 24 1; +#X connect 20 0 24 0; +#X connect 22 0 24 0; +#X connect 24 0 25 0; +#X connect 24 1 26 0; +#X connect 31 0 24 0; +#X restore 102 450 pd store; +#X text 180 450 store - build up or break down a list; +#X text 180 474 fromsymbol/tosymbol - convert symbols to/from ASCII +numbers; #X connect 21 0 24 0; #X connect 22 0 21 1; #X connect 23 0 21 0; diff --git a/pd/src/x_list.c b/pd/src/x_list.c index e03829441cb2800ad4c5df064d248a3a241a426a..230267430b0c6579f352d96eb577251f67489fad 100644 --- a/pd/src/x_list.c +++ b/pd/src/x_list.c @@ -336,15 +336,16 @@ static void list_cat_list(t_list_cat *x, t_symbol *s, t_alist y; alist_clone(&x->x_alist, &y, 0, n); alist_toatoms(&y, outv, 0, n); + alist_list(&x->x_alist, s, outc, outv); outlet_list(x->x_obj.ob_outlet, &s_list, outc, outv); alist_clear(&y); } else { alist_toatoms(&x->x_alist, outv, 0, n); + alist_list(&x->x_alist, s, outc, outv); outlet_list(x->x_obj.ob_outlet, &s_list, outc, outv); } - alist_list(&x->x_alist, s, outc, outv); XL_ATOMS_FREEA(outv, outc); } @@ -363,24 +364,23 @@ static void list_cat_anything(t_list_cat *x, t_symbol *s, t_alist y; alist_clone(&x->x_alist, &y, 0, n); alist_toatoms(&y, outv, 0, n); + alist_list(&x->x_alist, s, outc, outv); outlet_list(x->x_obj.ob_outlet, &s_list, outc, outv); alist_clear(&y); } else { alist_toatoms(&x->x_alist, outv, 0, n); + alist_list(&x->x_alist, s, outc, outv); outlet_list(x->x_obj.ob_outlet, &s_list, outc, outv); } - if (x->x_alist.l_n <= 1) - alist_anything(&x->x_alist, s, outc, outv); - else - alist_list(&x->x_alist, s, outc, outv); XL_ATOMS_FREEA(outv, outc); } static void list_cat_clear(t_list_cat *x) { alist_clear(&x->x_alist); + alist_init(&x->x_alist); } static void list_cat_free(t_list_cat *x) diff --git a/scripts/regression_tests.pd b/scripts/regression_tests.pd index 5861aa5f22fd17a5c8ba8c1513c0cff4e06c70e7..19f8693ea56aaf9adb6566cc369c00e25168ef44 100644 --- a/scripts/regression_tests.pd +++ b/scripts/regression_tests.pd @@ -1,29 +1,14 @@ #N canvas 3 60 749 617 12; -#X obj 475 301 r \$0-result; -#X obj 475 326 route 0; -#X obj 583 470 print failure; -#X obj 560 336 tgl 28 0 empty empty Print_All_Results 31 11 0 12 -262144 --1 -1 0 1; -#X obj 159 149 bng 31 250 50 0 empty empty Run_all 39 13 0 12 -262144 +#X obj 465 281 r \$0-result; +#X obj 159 179 bng 31 250 50 0 empty empty Run_all 39 13 0 12 -262144 -1 -1; #X obj 56 25 r init; #X obj 345 191 route dollarzero; -#X obj 475 411 t b a; -#X obj 475 541 s pd; #X obj 56 120 trigger bang bang anything; -#X msg 56 145 gui; -#X obj 56 170 pdinfo; -#X obj 56 195 sel 0; -#X obj 56 245 s pd; -#X msg 475 516 quit 1; -#X msg 56 220 quit; -#X obj 145 191 rtest msg_dollarzero; -#X obj 145 246 rtest msg_dollarzero_semi; -#X obj 145 302 rtest msg_click; +#X obj 145 221 rtest msg_dollarzero; +#X obj 145 276 rtest msg_dollarzero_semi; +#X obj 145 332 rtest msg_click; #X obj 345 216 rtest binbuf_dollarzero; -#X msg 475 440 gui; -#X obj 475 465 pdinfo; -#X obj 475 490 sel 0; #X text 117 25 <- we start Pd with the -send "init etc." flag. This will automatically start the tests and allow us to send a comma-separated list of messages which will be evaluated by Pd without a target. This @@ -34,57 +19,46 @@ is handy for some binbuf tests.; #X text 536 150 <- we have to escape the arg; #X text 556 190 escape it in a comment.; #X text 556 170 in bash but we can't; -#X obj 521 374 spigot; -#X obj 537 440 route 1; -#X obj 537 495 print success; -#X obj 145 358 rtest unpost_sanity; -#X obj 145 414 rtest unpost_error; -#X obj 145 465 rtest unpost_print; -#X obj 145 516 rtest unpost_long_message; -#X obj 145 569 rtest makefilename_double_percent; -#X obj 145 620 rtest makefilename_code_coverage; +#X obj 145 388 rtest unpost_sanity; +#X obj 145 444 rtest unpost_error; +#X obj 145 495 rtest unpost_print; +#X obj 145 546 rtest unpost_long_message; +#X obj 145 599 rtest makefilename_double_percent; +#X obj 145 650 rtest makefilename_code_coverage; #N canvas 461 242 450 323 (subpatch) 0; -#X restore 148 1105 pd; -#X obj 145 671 rtest makefilename_default; -#X obj 145 722 rtest makefilename_default_bang; -#X obj 145 773 rtest makefilename_float; -#X obj 145 824 rtest makefilename_symbol; -#X obj 145 875 rtest makefilename_bang; -#X obj 145 926 rtest drawtext-typecheck; -#X connect 0 0 1 0; -#X connect 1 0 7 0; -#X connect 1 1 29 0; -#X connect 3 0 29 1; -#X connect 4 0 16 0; -#X connect 5 0 9 0; -#X connect 6 0 19 0; -#X connect 7 0 20 0; -#X connect 7 1 30 0; -#X connect 9 0 10 0; -#X connect 9 1 16 0; -#X connect 9 2 6 0; -#X connect 10 0 11 0; -#X connect 11 0 12 0; -#X connect 12 0 15 0; -#X connect 14 0 8 0; -#X connect 15 0 13 0; +#X restore 148 1315 pd; +#X obj 145 701 rtest makefilename_default; +#X obj 145 752 rtest makefilename_default_bang; +#X obj 145 803 rtest makefilename_float; +#X obj 145 854 rtest makefilename_symbol; +#X obj 145 905 rtest makefilename_bang; +#X obj 145 956 rtest drawtext-typecheck; +#X obj 465 308 utils/print-result; +#X obj 56 151 utils/quit-if-nogui; +#X obj 145 1011 rtest list_cat_clear; +#X obj 145 1066 rtest list_cat_anything; +#X obj 145 1121 rtest list_cat_reentrancy; +#X connect 0 0 28 0; +#X connect 1 0 5 0; +#X connect 2 0 4 0; +#X connect 3 0 8 0; +#X connect 4 0 29 0; +#X connect 4 1 5 0; +#X connect 4 2 3 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 15 0; +#X connect 15 0 16 0; #X connect 16 0 17 0; #X connect 17 0 18 0; -#X connect 18 0 32 0; -#X connect 20 0 21 0; -#X connect 21 0 22 0; -#X connect 22 0 14 0; -#X connect 29 0 7 0; +#X connect 18 0 19 0; +#X connect 19 0 20 0; +#X connect 20 0 22 0; +#X connect 22 0 23 0; +#X connect 23 0 24 0; +#X connect 24 0 25 0; +#X connect 25 0 26 0; +#X connect 26 0 27 0; +#X connect 27 0 30 0; #X connect 30 0 31 0; -#X connect 30 1 2 0; -#X connect 32 0 33 0; -#X connect 33 0 34 0; -#X connect 34 0 35 0; -#X connect 35 0 36 0; -#X connect 36 0 37 0; -#X connect 37 0 39 0; -#X connect 39 0 40 0; -#X connect 40 0 41 0; -#X connect 41 0 42 0; -#X connect 42 0 43 0; -#X connect 43 0 44 0; +#X connect 31 0 32 0; diff --git a/scripts/regression_tests/list_cat_anything.pd b/scripts/regression_tests/list_cat_anything.pd new file mode 100644 index 0000000000000000000000000000000000000000..69297943acf70daed6b4977e3d9419fc7ab56221 --- /dev/null +++ b/scripts/regression_tests/list_cat_anything.pd @@ -0,0 +1,32 @@ +#N canvas 3 60 576 493 12; +#X obj 100 33 inlet; +#X obj 175 121 list cat; +#X obj 100 154 list append; +#X msg 21 34 bang; +#X msg 248 293 0; +#X obj 100 367 outlet; +#X msg 100 288 1; +#X msg 251 92 clear; +#X obj 100 62 trigger bang bang bang; +#X msg 175 92 a \, b; +#X obj 100 183 list length; +#X obj 100 212 select 2; +#X obj 153 241 bang; +#X obj 100 322 list append sending two consecutive anything messages +should output a list with two elements; +#X connect 0 0 8 0; +#X connect 1 0 2 1; +#X connect 2 0 10 0; +#X connect 3 0 8 0; +#X connect 4 0 13 0; +#X connect 6 0 13 0; +#X connect 7 0 1 1; +#X connect 8 0 2 0; +#X connect 8 1 9 0; +#X connect 8 2 7 0; +#X connect 9 0 1 0; +#X connect 10 0 11 0; +#X connect 11 0 6 0; +#X connect 11 1 12 0; +#X connect 12 0 4 0; +#X connect 13 0 5 0; diff --git a/scripts/regression_tests/list_cat_clear.pd b/scripts/regression_tests/list_cat_clear.pd new file mode 100644 index 0000000000000000000000000000000000000000..6f613db8d9a597df5653d519a71aec7f770f376b --- /dev/null +++ b/scripts/regression_tests/list_cat_clear.pd @@ -0,0 +1,44 @@ +#N canvas 3 60 576 493 12; +#X obj 100 33 inlet; +#X msg 175 111 a \, b \, c; +#X msg 241 111 clear \, clear \, clear; +#X obj 175 140 list cat; +#X obj 100 173 list append; +#X msg 21 34 bang; +#X obj 100 202 list trim; +#X obj 100 231 route a; +#X obj 100 260 route b; +#X obj 100 289 route c; +#X obj 248 323 bang; +#X msg 248 352 0; +#X obj 100 318 route bang; +#X obj 100 62 trigger bang bang bang bang; +#X msg 285 87 d \, e \, f; +#X obj 100 426 outlet; +#X msg 100 347 1; +#X obj 100 381 list append clear message to right inlet should reset +the list properly; +#X connect 0 0 13 0; +#X connect 1 0 3 0; +#X connect 2 0 3 1; +#X connect 3 0 4 1; +#X connect 4 0 6 0; +#X connect 5 0 13 0; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 7 1 10 0; +#X connect 8 0 9 0; +#X connect 8 1 10 0; +#X connect 9 0 12 0; +#X connect 9 1 10 0; +#X connect 10 0 11 0; +#X connect 11 0 17 0; +#X connect 12 0 16 0; +#X connect 12 1 10 0; +#X connect 13 0 4 0; +#X connect 13 1 1 0; +#X connect 13 2 2 0; +#X connect 13 3 14 0; +#X connect 14 0 3 0; +#X connect 16 0 17 0; +#X connect 17 0 15 0; diff --git a/scripts/regression_tests/list_cat_reentrancy.pd b/scripts/regression_tests/list_cat_reentrancy.pd new file mode 100644 index 0000000000000000000000000000000000000000..cecbe52512edbe32983a1dee7b528eac07b207eb --- /dev/null +++ b/scripts/regression_tests/list_cat_reentrancy.pd @@ -0,0 +1,133 @@ +#N canvas 3 60 843 633 12; +#X msg 126 72 bang; +#X obj 126 101 t b b; +#X msg 159 139 0; +#X msg 221 139 clear; +#X obj 127 169 f; +#X obj 187 169 + 1; +#X obj 127 198 t a a; +#X obj 30 120 bang; +#X obj 127 281 list cat; +#X obj 127 305 t a a; +#X obj 213 341 list; +#X obj 213 282 bang; +#X obj 127 228 moses 4; +#X msg 406 72 bang; +#X obj 406 101 t b b; +#X msg 439 139 0; +#X msg 501 139 clear; +#X obj 407 169 f; +#X obj 467 169 + 1; +#X obj 407 198 t a a; +#X obj 310 120 bang; +#X obj 407 281 list cat; +#X obj 407 305 t a a; +#X obj 493 341 list; +#X obj 493 282 bang; +#X obj 407 228 moses 4; +#X obj 213 365 list trim; +#X obj 213 394 route 0; +#X obj 213 418 route 1; +#X obj 213 442 route 2; +#X obj 213 466 route 3; +#X obj 126 7 inlet; +#X obj 126 36 trigger bang bang; +#X obj 493 365 list trim; +#X obj 493 394 route a; +#X obj 493 418 route b; +#X obj 493 442 route c; +#X obj 493 466 route d; +#N canvas 0 0 450 300 anything 0; +#X obj 92 30 inlet; +#X obj 92 59 + 97; +#X obj 92 88 makefilename %c; +#X msg 92 117 \$1; +#X obj 92 146 outlet; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X restore 407 253 pd anything; +#X obj 213 490 route bang; +#X obj 493 490 route bang; +#X msg 213 519 1; +#X msg 493 519 1; +#X obj 346 475 bang; +#X msg 346 504 0; +#X obj 612 478 bang; +#X msg 612 507 0; +#X obj 23 548 list append recursive list concatenation should produce +correct element order; +#X obj 433 548 list append recursive anything concatenation should +produce correct element order; +#X obj 23 593 outlet; +#X connect 0 0 1 0; +#X connect 1 0 4 0; +#X connect 1 1 2 0; +#X connect 1 1 3 0; +#X connect 2 0 4 1; +#X connect 3 0 8 1; +#X connect 4 0 6 0; +#X connect 5 0 4 1; +#X connect 6 0 12 0; +#X connect 6 1 5 0; +#X connect 7 0 4 0; +#X connect 8 0 9 0; +#X connect 9 0 7 0; +#X connect 9 1 10 1; +#X connect 10 0 26 0; +#X connect 11 0 10 0; +#X connect 12 0 8 0; +#X connect 12 1 11 0; +#X connect 13 0 14 0; +#X connect 14 0 17 0; +#X connect 14 1 15 0; +#X connect 14 1 16 0; +#X connect 15 0 17 1; +#X connect 16 0 21 1; +#X connect 17 0 19 0; +#X connect 18 0 17 1; +#X connect 19 0 25 0; +#X connect 19 1 18 0; +#X connect 20 0 17 0; +#X connect 21 0 22 0; +#X connect 22 0 20 0; +#X connect 22 1 23 1; +#X connect 23 0 33 0; +#X connect 24 0 23 0; +#X connect 25 0 38 0; +#X connect 25 1 24 0; +#X connect 26 0 27 0; +#X connect 27 0 28 0; +#X connect 27 1 43 0; +#X connect 28 0 29 0; +#X connect 28 1 43 0; +#X connect 29 0 30 0; +#X connect 29 1 43 0; +#X connect 30 0 39 0; +#X connect 30 1 43 0; +#X connect 31 0 32 0; +#X connect 32 0 0 0; +#X connect 32 1 13 0; +#X connect 33 0 34 0; +#X connect 34 0 35 0; +#X connect 34 1 45 0; +#X connect 35 0 36 0; +#X connect 35 1 45 0; +#X connect 36 0 37 0; +#X connect 36 1 45 0; +#X connect 37 0 40 0; +#X connect 37 1 45 0; +#X connect 38 0 21 0; +#X connect 39 0 41 0; +#X connect 39 1 43 0; +#X connect 40 0 42 0; +#X connect 40 1 45 0; +#X connect 41 0 47 0; +#X connect 42 0 48 0; +#X connect 43 0 44 0; +#X connect 44 0 47 0; +#X connect 45 0 46 0; +#X connect 46 0 48 0; +#X connect 47 0 49 0; +#X connect 48 0 49 0; diff --git a/scripts/regression_tests/utils/creation-test.pd b/scripts/utils/creation-test.pd similarity index 100% rename from scripts/regression_tests/utils/creation-test.pd rename to scripts/utils/creation-test.pd diff --git a/scripts/utils/print-result.pd b/scripts/utils/print-result.pd new file mode 100644 index 0000000000000000000000000000000000000000..261578f43052bf984b7505d9c590f28672237417 --- /dev/null +++ b/scripts/utils/print-result.pd @@ -0,0 +1,21 @@ +#N canvas 387 146 450 300 12; +#X obj 105 48 route 0; +#X obj 183 193 print failure; +#X obj 190 58 tgl 28 0 empty empty Print_All_Results 31 11 0 12 -262144 +-1 -1 0 1; +#X obj 105 133 t b a; +#X obj 151 96 spigot; +#X obj 137 163 route 1; +#X obj 137 218 print success; +#X obj 105 11 inlet; +#X obj 105 252 quit-if-nogui; +#X connect 0 0 3 0; +#X connect 0 1 4 0; +#X connect 2 0 4 1; +#X connect 3 0 8 0; +#X connect 3 1 5 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 5 1 1 0; +#X connect 7 0 0 0; +#X coords 0 -1 1 1 162 60 1 186 32; diff --git a/scripts/utils/quit-if-nogui.pd b/scripts/utils/quit-if-nogui.pd new file mode 100644 index 0000000000000000000000000000000000000000..a00e808251c986b08b7344878fe8725be925f3e1 --- /dev/null +++ b/scripts/utils/quit-if-nogui.pd @@ -0,0 +1,14 @@ +#N canvas 461 242 450 300 12; +#X obj 119 31 inlet; +#X obj 119 60 bang; +#X msg 119 88 gui; +#X obj 119 113 pdinfo; +#X obj 119 138 sel 0; +#X obj 119 188 s pd; +#X msg 119 163 quit; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 4 0 6 0; +#X connect 6 0 5 0;