Module: Kernel

Defined in:
lib/razing_ruby/kernel.rb

Instance Method Summary collapse

Instance Method Details

#raze_raise_funcsObject Also known as: raise_funcs

Ruby Raise =#



36
37
38
# File 'lib/razing_ruby/kernel.rb', line 36

def raze_raise_funcs
  @@raze_raise_funcs ||= []
end

#raze_set_raise_func(proc = nil, &block) ⇒ Object Also known as: set_raise_func



40
41
42
43
# File 'lib/razing_ruby/kernel.rb', line 40

def raze_set_raise_func(proc = nil, &block)
  return false unless (proc ||= block).is_a?(Proc)
  (Kernel.raze_raise_funcs << proc).index(proc)
end

#raze_set_trace_func(proc = nil, &block) ⇒ Object Also known as: set_trace_func



10
11
12
13
14
15
16
# File 'lib/razing_ruby/kernel.rb', line 10

def raze_set_trace_func(proc = nil, &block)
  return false unless (proc ||= block).is_a?(Proc)
  ruby_set_trace_func(Proc.new{ |*a, &b|
    Kernel.raze_trace_funcs.each { |p| p.call(*a, &b) }
  }) if Kernel.raze_trace_funcs.empty?
  (Kernel.raze_trace_funcs << proc).index(proc)
end

#raze_trace_funcsObject Also known as: trace_funcs

Ruby Trace Func =#



6
7
8
# File 'lib/razing_ruby/kernel.rb', line 6

def raze_trace_funcs
  @@raze_trace_funcs ||= []
end

#raze_unset_raise_func(proc = nil, &block) ⇒ Object Also known as: unset_raise_func



45
46
47
# File 'lib/razing_ruby/kernel.rb', line 45

def raze_unset_raise_func(proc = nil, &block)
  Kernel.raze_raise_funcs.delete(proc ||= block)
end

#raze_unset_raise_func_index(index) ⇒ Object Also known as: unset_raise_func_index



49
50
51
# File 'lib/razing_ruby/kernel.rb', line 49

def raze_unset_raise_func_index(index)
  Kernel.raze_raise_funcs.delete_at(index)
end

#raze_unset_trace_func(proc = nil, &block) ⇒ Object Also known as: unset_trace_func



18
19
20
# File 'lib/razing_ruby/kernel.rb', line 18

def raze_unset_trace_func(proc = nil, &block)
  Kernel.raze_trace_funcs.delete(proc ||= block)
end

#raze_unset_trace_func_index(index) ⇒ Object Also known as: unset_trace_func_index



22
23
24
# File 'lib/razing_ruby/kernel.rb', line 22

def raze_unset_trace_func_index(index)
  Kernel.raze_trace_funcs.delete_at(index)
end