mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* tool/mkconfig.rb (RbConfig.expand): get rid of exceptions on
frozen strings unless really changed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
99c8ded878
commit
9ae3b070c1
2 changed files with 8 additions and 5 deletions
|
@ -1,4 +1,7 @@
|
||||||
Tue Jun 30 16:53:17 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
Tue Jun 30 16:55:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* tool/mkconfig.rb (RbConfig.expand): get rid of exceptions on
|
||||||
|
frozen strings unless really changed.
|
||||||
|
|
||||||
* tool/file2lastrev.rb: get rid of global variables.
|
* tool/file2lastrev.rb: get rid of global variables.
|
||||||
|
|
||||||
|
|
|
@ -181,21 +181,21 @@ print <<EOS
|
||||||
MAKEFILE_CONFIG = {}
|
MAKEFILE_CONFIG = {}
|
||||||
CONFIG.each{|k,v| MAKEFILE_CONFIG[k] = v.dup}
|
CONFIG.each{|k,v| MAKEFILE_CONFIG[k] = v.dup}
|
||||||
def RbConfig::expand(val, config = CONFIG)
|
def RbConfig::expand(val, config = CONFIG)
|
||||||
val.gsub!(/\\$\\$|\\$\\(([^()]+)\\)|\\$\\{([^{}]+)\\}/) do
|
newval = val.gsub(/\\$\\$|\\$\\(([^()]+)\\)|\\$\\{([^{}]+)\\}/) {
|
||||||
var = $&
|
var = $&
|
||||||
if !(v = $1 || $2)
|
if !(v = $1 || $2)
|
||||||
'$'
|
'$'
|
||||||
elsif key = config[v = v[/\\A[^:]+(?=(?::(.*?)=(.*))?\\z)/]]
|
elsif key = config[v = v[/\\A[^:]+(?=(?::(.*?)=(.*))?\\z)/]]
|
||||||
pat, sub = $1, $2
|
pat, sub = $1, $2
|
||||||
config[v] = false
|
config[v] = false
|
||||||
RbConfig::expand(key, config)
|
config[v] = RbConfig::expand(key, config)
|
||||||
config[v] = key
|
|
||||||
key = key.gsub(/\#{Regexp.quote(pat)}(?=\\s|\\z)/n) {sub} if pat
|
key = key.gsub(/\#{Regexp.quote(pat)}(?=\\s|\\z)/n) {sub} if pat
|
||||||
key
|
key
|
||||||
else
|
else
|
||||||
var
|
var
|
||||||
end
|
end
|
||||||
end
|
}
|
||||||
|
val.replace(newval) unless newval == val
|
||||||
val
|
val
|
||||||
end
|
end
|
||||||
CONFIG.each_value do |val|
|
CONFIG.each_value do |val|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue