查看: 2853|回复: 3

[已经解决] 请问有不有可以显示方法内容的方法?

[复制链接]

聪仔

梦石
0
星屑
6187
在线时间
3077 小时
注册时间
2013-12-26
回帖
3076
发表于 2014-11-16 08:31:02 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
对象.class          可以显示对象的类
实例.instance_variables            可以显示实例的实例变量
那么有不有这样一个方法,能显示一个方法的内容呢...
有的方法是被封装起来的,不知道其内容,无法alias或修改重写什么的...
聪聪全国第三帅...
他们都叫我【人赢聪】
我的RM能力雷达图:

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2014-11-16 08:35:47 | 显示全部楼层
本帖最后由 taroxd 于 2014-11-16 08:37 编辑

[pre lang="ruby" line="1"]
# Ruby Version >= 1.9

def a
  print 1 + 1
end

puts RubyVM::InstructionSequence.disasm method(:a)

output = <<EOF
== disasm: <RubyVM::InstructionSequence:a@F:/Documents/test.rb>=========
0000 trace            8                                               (   4)
0002 trace            1                                               (   5)
0004 putself         
0005 putobject_OP_INT2FIX_O_1_C_
0006 putobject_OP_INT2FIX_O_1_C_
0007 opt_plus         <callinfo!mid:+, argc:1, ARGS_SKIP>
0009 opt_send_simple  <callinfo!mid:print, argc:1, FCALL|ARGS_SKIP>
0011 trace            16                                              (   6)
0013 leave                                                            (   5)
EOF[/pre]

不过 C 函数的话,我就没辙了
就算能搞出 C 函数,应该也是汇编代码了吧。

点评

1.9以上版本  发表于 2014-11-16 11:20
↓ 见第一行注释  发表于 2014-11-16 11:16
为什么我有一种莫名躺枪的感觉···  发表于 2014-11-16 11:10
不会用呀...版主大人,会报错不认识RubyVM是什么...  发表于 2014-11-16 09:39

评分

参与人数 2星屑 +260 收起 理由
恐惧剑刃 + 200 我很赞同
正太君 + 60 谢谢版主大人啦...

查看全部评分

回复

使用道具 举报

聪仔

梦石
0
星屑
6187
在线时间
3077 小时
注册时间
2013-12-26
回帖
3076
 楼主| 发表于 2014-11-16 11:32:12 | 显示全部楼层
taroxd 发表于 2014-11-16 08:35
# Ruby Version >= 1.9

def a


VA是1.9以上吗...
请问版主大人,可以在RM里面用吗...如果想在RM里面用应该怎么做呢...
请不要被我的名字迷惑了,虽然我叫聪仔,但是并没大家想象的那么聪明呀...

点评

咦咦...悲...惨...的...一...天...  发表于 2014-11-16 13:26
VX和XP用不了  发表于 2014-11-16 12:47
咦咦...我去试试...冒昧地问版主大人一句,如果想在VX或XP用的话,需要做什么吗...  发表于 2014-11-16 12:34
VA是的,可以直接用  发表于 2014-11-16 11:37
聪聪全国第三帅...
他们都叫我【人赢聪】
我的RM能力雷达图:

回复

使用道具 举报

聪仔

梦石
0
星屑
6187
在线时间
3077 小时
注册时间
2013-12-26
回帖
3076
 楼主| 发表于 2014-11-18 11:53:19 | 显示全部楼层
@恐惧剑刃 请版主大人结帖吧...
@taroxd 谢谢版主大人,请再帮聪看看本区刚发的另一个问题吧...

评分

参与人数 1星屑 +30 收起 理由
恐惧剑刃 + 30 我很赞同

查看全部评分

聪聪全国第三帅...
他们都叫我【人赢聪】
我的RM能力雷达图:

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部