Class TTK::Strategies::Strategy::AssertEval
In: lib/ttk/strategies/Strategy/assert_eval.rb
Parent: SafeEval

Methods

Public Class methods

[Source]

# File lib/ttk/strategies/Strategy/assert_eval.rb, line 18
        def initialize
          super(3, true)
        end

Public Instance methods

[Source]

# File lib/ttk/strategies/Strategy/assert_eval.rb, line 22
        def run(code_str='', binding={}, filename='(AssertEval)', lineno=1)
          code_str.strip!
          return nil if code_str.empty?
          super(code_str, get_binding(binding), filename, lineno)
        end

Protected Instance methods

[Source]

# File lib/ttk/strategies/Strategy/assert_eval.rb, line 36
        def get_binding(local_binding)
          code = ''
          local_binding.each do |fileid, filename|
            code += "#{fileid} = Pathname.new('#{filename}')\n"
          end
          eval(code)
          return binding
        end

[Source]

# File lib/ttk/strategies/Strategy/assert_eval.rb, line 29
        def set_environment
          Kernel.module_eval('undef_method :`')
          require 'pathname'
          Pathname.module_eval('undef_method :open')
        end

[Validate]