本文简要介绍ruby语言中 RubyVM::InstructionSequence.of
的用法。
用法
of(p1)
返回包含给定过程或方法的指令序列。
例如,使用 irb:
# a proc > p = proc { num = 1 + 2 } > RubyVM::InstructionSequence.of(p) > #=> <RubyVM::InstructionSequence:block in irb_binding@(irb)> # for a method > def foo(bar); puts bar; end > RubyVM::InstructionSequence.of(method(:foo)) > #=> <RubyVM::InstructionSequence:foo@(irb)>
使用 ::compile_file
:
# /tmp/iseq_of.rb def hello puts "hello, world" end $a_global_proc = proc { str = 'a' + 'b' } # in irb > require '/tmp/iseq_of.rb' # first the method hello > RubyVM::InstructionSequence.of(method(:hello)) > #=> #<RubyVM::InstructionSequence:0x007fb73d7cb1d0> # then the global proc > RubyVM::InstructionSequence.of($a_global_proc) > #=> #<RubyVM::InstructionSequence:0x007fb73d7caf78>
相关用法
- Ruby InstructionSequence.base_label用法及代码示例
- Ruby InstructionSequence.disasm用法及代码示例
- Ruby InstructionSequence.first_lineno用法及代码示例
- Ruby InstructionSequence.path用法及代码示例
- Ruby InstructionSequence.compile用法及代码示例
- Ruby InstructionSequence.compile_file用法及代码示例
- Ruby InstructionSequence.label用法及代码示例
- Ruby InstructionSequence.absolute_path用法及代码示例
- Ruby InstructionSequence.disassemble用法及代码示例
- Ruby InstructionSequence.eval用法及代码示例
- Ruby Installer.install用法及代码示例
- Ruby Installer.shebang用法及代码示例
- Ruby Inspector.def_inspector用法及代码示例
- Ruby Inspector类用法及代码示例
- Ruby Integer.nobits?用法及代码示例
- Ruby Integer lcm()用法及代码示例
- Ruby Integer.self >=用法及代码示例
- Ruby Integer.self >>用法及代码示例
- Ruby Integer.next用法及代码示例
- Ruby Integer.self ** numeric用法及代码示例
- Ruby Integer integer?用法及代码示例
- Ruby Integer.truncate用法及代码示例
- Ruby Integer digits用法及代码示例
- Ruby Integer divmod()用法及代码示例
- Ruby Inflate.inflate用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 InstructionSequence.of。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。