Changeset 549

Show
Ignore:
Timestamp:
03/09/05 07:53:55 (4 years ago)
Author:
Darren_Duncan
svk:copy_cache_prev:
1869
Message:

a smaller set of Locale::KeyedText? improvements

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • modules/Locale-KeyedText/lib/Locale/KeyedText.pm

    r546 r549  
    3434 
    3535subtype KeyName of Str where { $_.defined and $_ ne '' and $_ !~ m/\W/ } 
    36 subtype KeyNameHash of Hash is shape(PkgName) of Str; # keys are of type KeyName, values of type Str 
     36subtype KeyNameHash of Hash is shape(KeyName) of Str; # keys are of type KeyName, values of type Str 
    3737subtype PkgName of Str where { $_.defined and $_ ne '' and $_ !~ m/<-[a-zA-Z0-9_:]>/ } 
    3838subtype PkgNameArray of Array of PkgName; 
     
    6767 
    6868method new( $class: KeyName $msg_key, KeyNameHash ?%msg_vars ) returns Locale::KeyedText::Message { 
    69         my $message = $class.bless( {} ); 
    70         $message.msg_key = $msg_key; 
    71         $message.msg_vars = %msg_vars; # copy list values 
    72         return( $message ); 
     69        return( $class.bless( { msg_key => $msg_key, msg_vars => %msg_vars } ) ); 
    7370} 
    7471 
     
    9188method as_string( $message: ) returns Str { 
    9289        # This method is intended for debugging use only. 
    93         return( $message.msg_key~': '~join( ', ', map {  
    94                         $_.key~'='~($_.value // '')  
    95                 } $message.msg_vars.pairs.sort ) ); # S02 says sorting Pairs sorts keys by default. 
     90        return( $message.msg_key~': '~$message.msg_vars.pairs.sort. 
     91                map:{ $_.key~'='~($_.value // '') }.join( ', ' ); # S02 says sorting Pairs sorts keys by default. 
    9692        # I might use %hash.as() later, but don't know if it is customizable to sort or make undefs the empty str. 
    9793} 
     
    111107 
    112108method new( $class: PkgNameArray @set_names, PkgNameArray @member_names ) returns Locale::KeyedText::Translator { 
    113         my $translator = $class.bless( {} ); 
    114         $translator.tmpl_set_nms = @set_names; # copy list values 
    115         $translator.tmpl_mem_nms = @member_names; # copy list values 
    116         return( $translator ); 
     109        return( $class.bless( { tmpl_set_nms => @set_names, tmpl_mem_nms => @member_names } ); 
    117110} 
    118111