Module: RbbtPython

Extended by:
PyCall::Import
Defined in:
lib/rbbt/util/python.rb

Class Method Summary collapse

Class Method Details

.add_path(path) ⇒ Object



46
47
48
49
50
# File 'lib/rbbt/util/python.rb', line 46

def self.add_path(path)
  self.run 'sys' do
    sys.path.append path
  end
end

.run(mod = nil, imports = nil, &block) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/rbbt/util/python.rb', line 6

def self.run(mod = nil, imports = nil, &block)
  if mod
    if imports
      pyfrom mod, :import => imports
    else
      pyimport mod 
    end
  end

  module_eval(&block)
end

.run_log(mod = nil, imports = nil, severity = 0, severity_err = nil, &block) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/rbbt/util/python.rb', line 18

def self.run_log(mod = nil, imports = nil, severity = 0, severity_err = nil, &block)
  if mod
    if imports
      pyfrom mod, :import => imports
    else
      pyimport mod 
    end
  end

  Log.trap_std("Python STDOUT", "Python STDERR", severity, severity_err) do
    module_eval(&block)
  end
end

.run_log_stderr(mod = nil, imports = nil, severity = 0, &block) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/rbbt/util/python.rb', line 32

def self.run_log_stderr(mod = nil, imports = nil, severity = 0, &block)
  if mod
    if imports
      pyfrom mod, :import => imports
    else
      pyimport mod 
    end
  end

  Log.trap_stderr("Python STDERR", severity) do
    module_eval(&block)
  end
end