Changeset 21539 for misc

Show
Ignore:
Timestamp:
07/25/08 20:19:12 (6 months ago)
Author:
pmurias
Message:

[smop] removed io and hash from the boilerplate
Scalar does method delegation

Location:
misc/elfish/elfX
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • misc/elfish/elfX/EmitSimpleP5.pm

    r21288 r21539  
    619619    }).join(' '); 
    620620    'Class::Multimethods::multimethod '~$enc_name~ 
    621     " => split(/\s+/,'"~$sig~"') => "~ $f_emitted ~';'; 
     621    ' => split(/\s+/'~",'"~$sig~"') => "~ $f_emitted ~';'; 
    622622  }; 
    623623  method cb__MethodDecl ($n) { 
     
    906906  }; 
    907907  method cb__Buf ($n) { 
    908     '"' ~ quotemeta($n.buf) ~ '"'; 
     908    my $s = $n.buf; 
     909#    $s.re_sub_g('\\(.)','$1'); 
     910    '"' ~ quotemeta($s) ~ '"'; 
    909911  }; 
    910912  method cb__Rx ($n) { 
  • misc/elfish/elfX/IRx1_FromAST.pm

    r21519 r21539  
    245245    $main::irbuilder.add_constructor('quote:q', sub ($m) { 
    246246      my $s = irbuild_ir($m.{'hash'}{'text'}); 
    247 $s.re_gsub(rx:P5/(?<!\\)\\\\/,"\\"); 
     247$s.re_sub_g('\\\\([\\\\\'])','$1'); 
    248248IRx1::Buf.newp($m,$s); 
    249249    }); 
     
    253253$s.re_gsub(rx:P5/(?<!\\)\\n/,"\n"); 
    254254$s.re_gsub(rx:P5/(?<!\\)\\t/,"\t"); 
    255 $s.re_gsub(rx:P5/(?<!\\)\\\\/,"\\"); 
     255$s.re_sub_g('\\\\(.)','$1'); 
    256256IRx1::Buf.newp($m,$s); 
    257257    }); 
  • misc/elfish/elfX/IRx1_FromAST_create.pl

    r21519 r21539  
    170170quote:q 
    171171my $s = $m<text>; 
    172 $s =~ s/(?<!\\)\\\\/\\/g; 
     172$s.re_sub_g('\\\\([\\\\\'])','$1'); 
    173173Buf.newp($s) 
    174174 
     
    177177$s =~ s/(?<!\\)\\n/\n/g; 
    178178$s =~ s/(?<!\\)\\t/\t/g; 
    179 $s =~ s/(?<!\\)\\\\/\\/g; 
     179$s.re_sub_g('\\\\(.)','$1'); 
    180180Buf.newp($s) 
    181181 
  • misc/elfish/elfX/sm0p_boilerplate_back

    r21342 r21539  
    55                SMOP__ID__goto, 
    66                node); 
    7  
    8   SMOP_RELEASE(interpreter,hash); 
    9   SMOP_RELEASE(interpreter,io); 
    107 
    118  SMOP_DISPATCH(interpreter, SMOP_RI(interpreter), 
  • misc/elfish/elfX/sm0p_boilerplate_front

    r21411 r21539  
    1515                                                                         SMOP__INTPTR__InterpreterInstance,NULL,NULL)); 
    1616  SMOP__Object* node = NULL; 
    17  
    18   SMOP__Object* io = SMOP__S1P__IO_create(); 
    19   SMOP__Object* hash = SMOP__S1P__Hash_create(); 
    2017  node = q:sm0p {