Project

General

Profile

Feature #4007

Updated by yhara (Yutaka HARA) over 11 years ago

=begin 
  
  Hello 
  As I looked to C++ extension suffing numeric literals. 
  My proposal is make . in method call of numeric literal optional so we can for example write 
  4i instead 4.i  
  Another application is making Time manipulations more readable like 
  deadline=Time.now + 2hours 
 
  Here is patch 
  It should be more restrictive to disallow traps like 0xadup 
  Index: parse.y 
  =================================================================== 
  --- parse.y 	 (revision 29647) 
  +++ parse.y 	 (working copy) 
  @@ -3592,6 +3592,16 @@ 
  			 $$ = method_arg(dispatch1(fcall, $1), $2); 
  		     %*/ 
  		     } 
  + 		 | numeric tIDENTIFIER opt_paren_args 
  + 		     { 
  + 		     /*%%%*/ 
  + 			 $$ = NEW_CALL($1, $2, $3); 
  + 			 fixpos($$, $1); 
  + 		     /*% 
  + 			 $$ = dispatch3(call, $1, ripper_id2sym('.'), $2); 
  + 			 $$ = method_optarg($$, $3); 
  + 		     %*/ 
  + 		     } 
  		 | primary_value '.' operation2 opt_paren_args 
  		     { 
  		     /*%%%*/ 
 
 =end 
 

Back