mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	 f8d0bdedf1
			
		
	
	
		f8d0bdedf1
		
	
	
	
	
		
			
			* tool/asm_parse.rb: add description * tool/change_maker.rb: ditto * tool/downloader.rb: ditto * tool/eval.rb: ditto * tool/expand-config.rb: ditto * tool/extlibs.rb: ditto * tool/fake.rb: ditto * tool/file2lastrev.rb: ditto * tool/gem-unpack.rb: ditto * tool/gen_dummy_probes.rb: ditto * tool/gen_ruby_tapset.rb: ditto * tool/generic_erb.rb: ditto * tool/id2token.rb: ditto * tool/ifchange: ditto * tool/insns2vm.rb: ditto * tool/instruction.rb: ditto * tool/jisx0208.rb: ditto * tool/merger.rb: ditto * tool/mkrunnable.rb: ditto * tool/node_name.rb: ditto * tool/parse.rb: ditto * tool/rbinstall.rb: ditto * tool/rbuninstall.rb: ditto * tool/rmdirs: ditto * tool/runruby.rb: ditto * tool/strip-rdoc.rb: ditto * tool/vcs.rb: ditto * tool/vtlh.rb: ditto * tool/ytab.sed: ditto * tool/enc-unicode.rb: fix typo * tool/mk_call_iseq_optimized.rb: ditto * tool/update-deps: ditto [ruby-core:76215] [Bug #12539] by Noah Gibbs <the.codefolio.guy@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			60 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Sed
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Sed
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/sed -f
 | |
| # This file is used when generating code for the Ruby parser.
 | |
| /^int yydebug;/{
 | |
| i\
 | |
| #ifndef yydebug
 | |
| a\
 | |
| #endif
 | |
| }
 | |
| /^extern int yydebug;/{
 | |
| i\
 | |
| #ifndef yydebug
 | |
| a\
 | |
| #endif
 | |
| }
 | |
| /^yydestruct.*yymsg/,/#endif/{
 | |
|   /^yydestruct/{
 | |
|     /parser/!{
 | |
|       H
 | |
|       s/^/ruby_parser_&/
 | |
|       s/)$/, parser)/
 | |
|       /\*/s/parser)$/struct parser_params *&/
 | |
|     }
 | |
|   }
 | |
|   /^#endif/{
 | |
|     x
 | |
|     /yydestruct/{
 | |
|       i\
 | |
|     struct parser_params *parser;
 | |
|       a\
 | |
| #define yydestruct(m, t, v) ruby_parser_yydestruct(m, t, v, parser)
 | |
|     }
 | |
|     x
 | |
|   }
 | |
| }
 | |
| /^yy_stack_print/{
 | |
|   /parser/!{
 | |
|     H
 | |
|     s/)$/, parser)/
 | |
|     /\*/s/parser)$/struct parser_params *&/
 | |
|   }
 | |
| }
 | |
| /yy_stack_print.*;/{
 | |
|   x
 | |
|   /yy_stack_print/{
 | |
|     x
 | |
|     s/\(yy_stack_print *\)(\(.*\));/\1(\2, parser);/
 | |
|     x
 | |
|   }
 | |
|   x
 | |
| }
 | |
| /^yy_reduce_print/,/^}/{
 | |
|   s/fprintf *(stderr,/YYFPRINTF (parser,/g
 | |
| }
 | |
| s/\( YYFPRINTF *(\)yyoutput,/\1parser,/
 | |
| s/\( YYFPRINTF *(\)stderr,/\1parser,/
 | |
| s/\( YYDPRINTF *((\)stderr,/\1parser,/
 | |
| s/^\([ 	]*\)\(yyerror[ 	]*([ 	]*parser,\)/\1parser_\2/
 | |
| s!^ *extern char \*getenv();!/* & */!
 | |
| s/^\(#.*\)".*\.tab\.c"/\1"parse.c"/
 | |
| /^\(#.*\)".*\.y"/s:\\\\:/:g
 |