diff options
author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-03 20:39:54 +0000 |
---|---|---|
committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-03 20:39:54 +0000 |
commit | 85b326ac4207698bbab25c3679661cfe6e0b4e3d (patch) | |
tree | f24cad64c7aa6836a765ec07aacc5d43f59f5f77 /ext | |
parent | 7f80452c218d4a07f168c78e1dbce0e07091109d (diff) | |
download | ruby-85b326ac4207698bbab25c3679661cfe6e0b4e3d.tar.gz |
* ext/tk/lib/tk/variable.rb: add TkVariable#to_hash,to_proc,to_int,to_str,to_ary
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r-- | ext/tk/lib/tk/variable.rb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/ext/tk/lib/tk/variable.rb b/ext/tk/lib/tk/variable.rb index 6fc2ffdf2f..ee60fcfc6c 100644 --- a/ext/tk/lib/tk/variable.rb +++ b/ext/tk/lib/tk/variable.rb @@ -694,6 +694,14 @@ end self end + def to_hash + hash = {} + self.keys.each{|k| + hash[k] = self[k] + } + hash + end + def set_element_value(idxs, val) if idxs.kind_of?(Array) self[*idxs]=val @@ -921,9 +929,20 @@ end self.set_proceure_element(idxs, cmd) end + def to_proc + cmd = self.procedure + if cmd.respond_to?(:call) + cmd + else + # cmd is a String + cmd.to_sym.to_proc + end + end + def to_i number(_value).to_i end + alias to_int to_i def element_to_i(*idxs) number(_element_value(*idxs)).to_i end @@ -940,6 +959,7 @@ end _value end alias string to_s + alias to_str to_s def element_to_s(*idxs) _element_value(*idxs) end @@ -1011,6 +1031,7 @@ end tk_split_simplelist(_value) end alias to_a list + alias to_ary list def list_element(*idxs) tk_split_simplelist(_element_value(*idxs)) end |