本文簡要介紹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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。