Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从proc对象中提取代码?

如何从proc对象中提取代码?

提问于 2018-01-31 15:43:37
回答 2关注 0查看 302

给定一个proc对象,是否可以查看其中的代码?

例如:

代码语言:txt
AI代码解释
复制
p = Proc.new{test = 0}

我需要的是某种方式从已经创建的proc对象中获取字符串“test=0”。

回答 2

okchina

发布于 2018-02-01 01:19:33

Ruby#number0#

代码语言:txt
AI代码解释
复制
$ irb
ruby-1.9.2-p0 > require 'sourcify'
             => true 
ruby-1.9.2-p0 > p = Proc.new{test = 0}
             => #<Proc:0xa4b166c@(irb):2> 
ruby-1.9.2-p0 > p.to_source
             => "proc { test = 0 }" 

sunny陆小维

发布于 2018-01-31 23:55:14

代码语言:txt
AI代码解释
复制
>> # tested with 1.8.7
>> require "parse_tree"
=> true
>> require "ruby2ruby"
=> true
>> require "parse_tree_extensions"
=> true
>> p = Proc.new{test = 0}
>> p.to_ruby
=> "proc { test = 0 }"

可以将proc的这个字符串表示转换回ruby:

代码语言:txt
AI代码解释
复制
>> eval(p.to_ruby).call
0
和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

php如何从某API中取特定值输出?

1414

编写一个爬取QQ音乐 的python代码?

1111

爬取京东评论,且修改网址直接可复用哦(送代码)?

1132

如何从Java中的字符串中提取数字?

22K

qq小游戏 我资源存到 云对象存储, android真机可以拉取, IOS真机拉取不了。配置错了?

0211
相关问答用户
到家集团 | 技术VP擅长5个领域
新浪微博 | 高级总监擅长4个领域
擅长5个领域
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档