From d22ac50ad493256c707b7b39eadf3ac46d989224 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 29 Nov 2012 08:12:29 +0000 Subject: tool/vpath.rb * tool/generic_erb.rb, tool/id2token.rb: add --path-separator option for mingw where make and built ruby live in different world. * tool/vpath.rb: extract from tool/instruction.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- tool/id2token.rb | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) (limited to 'tool/id2token.rb') diff --git a/tool/id2token.rb b/tool/id2token.rb index 4c7189c094..191b872c5f 100755 --- a/tool/id2token.rb +++ b/tool/id2token.rb @@ -1,27 +1,22 @@ #! /usr/bin/ruby -p +# -*- coding: us-ascii -*- BEGIN { require 'optparse' - vpath = ["."] + $:.unshift(File.dirname(__FILE__)) + require 'vpath' + vpath = VPath.new header = nil opt = OptionParser.new do |o| - o.on('-v', '--vpath=DIR') {|dirs| vpath.concat dirs.split(File::PATH_SEPARATOR)} + vpath.def_options(o) header = o.order!(ARGV).shift end or abort opt.opt_s TOKENS = {} - vpath.find do |dir| - begin - h = File.read(File.join(dir, header)) - rescue Errno::ENOENT - nil - else - h.scan(/^#define\s+RUBY_TOKEN_(\w+)\s+(\d+)/) do |token, id| - TOKENS[token] = id - end - true - end - end or abort "#{header} not found in #{vpath.inspect}" + h = vpath.read(header) rescue abort("#{header} not found in #{vpath.inspect}") + h.scan(/^#define\s+RUBY_TOKEN_(\w+)\s+(\d+)/) do |token, id| + TOKENS[token] = id + end TOKENS_RE = /\bRUBY_TOKEN\((#{TOKENS.keys.join('|')})\)\s*(?=\s)/ } -- cgit v1.2.3