Top Level Namespace

Defined Under Namespace

Modules: IRB Classes: Binding, Object, XMP

Constant Summary collapse

RubyLex =
IRB::RubyLex

Instance Method Summary collapse

Instance Method Details

#xmp(exps, bind = nil) ⇒ Object

A convenience method that’s only available when the you require the IRB::XMP standard library.

Creates a new XMP object, using the given expressions as the exps parameter, and optional binding as bind or uses the top-level binding. Then evaluates the given expressions using the :XMP prompt mode.

For example:

require 'irb/xmp'
ctx = binding
xmp 'foo = "bar"', ctx
#=> foo = "bar"
  #==>"bar"
ctx.eval 'foo'
#=> "bar"

See XMP.new for more information.



159
160
161
162
163
164
# File 'lib/irb/xmp.rb', line 159

def xmp(exps, bind = nil)
  bind = IRB::Frame.top(1) unless bind
  xmp = XMP.new(bind)
  xmp.puts exps
  xmp
end