- Timestamp:
- 10/08/08 20:38:38 (6 weeks ago)
- Location:
- v6/smop
- Files:
-
- 8 modified
-
src/s1p_code.sm0p (modified) (1 diff)
-
src/s1p_grep.sm0p (modified) (2 diffs)
-
src/s1p_map.sm0p (modified) (2 diffs)
-
src/s1p_ritest.c (modified) (1 diff)
-
test/21_code.m0ld (modified) (1 diff)
-
test/30_array_map.m0ld (modified) (1 diff)
-
test/35_array_grep.m0ld (modified) (1 diff)
-
test/38_ritest.m0ld (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
v6/smop/src/s1p_code.sm0p
r22512 r22543 139 139 $void = $lexical_outer_container."STORE"($outer); 140 140 141 # for method postcircumfix:<( )> ($capture) {...} instead of the specced method postcircumfix:<( )> (|$capture) {...} 142 #my $actualcapture = $capture."positional"(0); 143 #$void = $signature."BIND"($actualcapture,$lexical); 144 145 $void = $signature."BIND"($capture,$lexical); 141 my $actualcapture = $capture."positional"(0); 142 $void = $signature."BIND"($actualcapture,$lexical); 146 143 147 144 my $frame_proto = ¢SMOP__Mold__Frame; -
v6/smop/src/s1p_grep.sm0p
r22512 r22543 30 30 ret = smop_lowlevel_alloc(sizeof(smop_s1p_grep_iterator_struct)); 31 31 ret->RI = (SMOP__ResponderInterface*)SMOP__S1P__grep; 32 ((smop_s1p_grep_iterator_struct*)ret)->code = SMOP__NATIVE__capture_positional(interpreter,capture,0); 33 ((smop_s1p_grep_iterator_struct*)ret)->input_iterator = SMOP__NATIVE__capture_positional(interpreter,capture,1); 32 SMOP__Object* actualcapture = SMOP__NATIVE__capture_positional(interpreter,capture,0); 33 ((smop_s1p_grep_iterator_struct*)ret)->code = SMOP__NATIVE__capture_positional(interpreter,actualcapture,0); 34 ((smop_s1p_grep_iterator_struct*)ret)->input_iterator = SMOP__NATIVE__capture_positional(interpreter,actualcapture,1); 35 SMOP_RELEASE(interpreter,actualcapture); 34 36 35 37 } else if (identifier == SMOP__ID__FETCH) { … … 125 127 iteration: 126 128 my $item = $next_item."FETCH"(); 127 my $result = $code."postcircumfix:( )"($item); 129 my $capture = ¢SMOP__S1P__Capturize."capturize"($item); 130 my $result = $code."postcircumfix:( )"($capture); 128 131 my $bool = $result."bool"(); 129 132 if $bool { goto in } else { goto fetch_item }; -
v6/smop/src/s1p_map.sm0p
r22512 r22543 30 30 ret = smop_lowlevel_alloc(sizeof(smop_s1p_map_iterator_struct)); 31 31 ret->RI = (SMOP__ResponderInterface*)SMOP__S1P__map; 32 ((smop_s1p_map_iterator_struct*)ret)->code = SMOP__NATIVE__capture_positional(interpreter,capture,0); 33 ((smop_s1p_map_iterator_struct*)ret)->input_iterator = SMOP__NATIVE__capture_positional(interpreter,capture,1); 32 SMOP__Object* actualcapture = SMOP__NATIVE__capture_positional(interpreter,capture,0); 33 ((smop_s1p_map_iterator_struct*)ret)->code = SMOP__NATIVE__capture_positional(interpreter,actualcapture,0); 34 ((smop_s1p_map_iterator_struct*)ret)->input_iterator = SMOP__NATIVE__capture_positional(interpreter,actualcapture,1); 35 SMOP_RELEASE(interpreter,actualcapture); 34 36 35 37 } else if (identifier == SMOP__ID__Void) { … … 120 122 iteration: 121 123 my $item = $next_item."FETCH"(); 122 my $result = $code."postcircumfix:( )"($item); 124 my $capture = ¢SMOP__S1P__Capturize."capturize"($item); 125 my $result = $code."postcircumfix:( )"($capture); 123 126 my $void = $back."setr"($result); 124 127 $void = $interpreter."goto"($back); -
v6/smop/src/s1p_ritest.c
r22540 r22543 23 23 SMOP_RELEASE(interpreter, val); 24 24 SMOP_RELEASE(interpreter, ri); 25 SMOP_RELEASE(interpreter, capture); 25 26 return ret; 26 27 } -
v6/smop/test/21_code.m0ld
r22251 r22543 33 33 })); 34 34 35 $void = $code1."postcircumfix:( )"("ok 1\n"); 36 $void = $code1."postcircumfix:( )"("ok 2\n"); 37 $void = $code1."postcircumfix:( )"(); 35 my $capture = ¢SMOP__S1P__Capturize."capturize"("ok 1\n"); 36 $void = $code1."postcircumfix:( )"($capture); 37 $capture = ¢SMOP__S1P__Capturize."capturize"("ok 2\n"); 38 $void = $code1."postcircumfix:( )"($capture); 39 $capture = ¢SMOP__S1P__Capturize."capturize"(); 40 $void = $code1."postcircumfix:( )"($capture); -
v6/smop/test/30_array_map.m0ld
r22287 r22543 48 48 my $iteritem = $iterator."FETCH"(); 49 49 50 my $otheriterator = ¢SMOP__S1P__map."postcircumfix:( )"($code1, $iteritem); 50 my $capture = ¢SMOP__S1P__Capturize."capturize"($code1, $iteritem); 51 my $otheriterator = ¢SMOP__S1P__map."postcircumfix:( )"($capture); 51 52 52 53 $void = $out."print"("ok 1 - map is lazy\n"); -
v6/smop/test/35_array_grep.m0ld
r22299 r22543 87 87 my $iteritem = $iterator."FETCH"(); 88 88 89 my $grepiterator = ¢SMOP__S1P__grep."postcircumfix:( )"($grep_code, $iteritem); 89 my $capture = ¢SMOP__S1P__Capturize."capturize"($grep_code, $iteritem); 90 my $grepiterator = ¢SMOP__S1P__grep."postcircumfix:( )"($capture); 90 91 my $grepitem = $grepiterator."FETCH"(); 91 92 92 my $mapiterator = ¢SMOP__S1P__map."postcircumfix:( )"($map_code, $grepitem); 93 $capture = ¢SMOP__S1P__Capturize."capturize"($map_code, $grepitem); 94 my $mapiterator = ¢SMOP__S1P__map."postcircumfix:( )"($capture); 93 95 94 96 $void = $out."print"("ok 1 - map and grep are lazy\n"); -
v6/smop/test/38_ritest.m0ld
r22540 r22543 8 8 $void = $out."print"("1..3\n"); 9 9 10 my $test = ¢SMOP__S1P__ritest."postcircumfix:( )"(1, ¢SMOP__NATIVE__int); 10 my $capture = ¢SMOP__S1P__Capturize."capturize"(1, ¢SMOP__NATIVE__int); 11 my $test = ¢SMOP__S1P__ritest."postcircumfix:( )"($capture); 11 12 my $bool = $test."bool"(); 12 13 … … 21 22 22 23 nexttest: 23 $test = ¢SMOP__S1P__ritest."postcircumfix:( )"("test", ¢SMOP__NATIVE__int); 24 $capture = ¢SMOP__S1P__Capturize."capturize"("test", ¢SMOP__NATIVE__int); 25 $test = ¢SMOP__S1P__ritest."postcircumfix:( )"($capture); 24 26 $bool = $test."bool"(); 25 27
