class BitGirder::Ops::Ruby::RubyEnv
Public Class Methods
from_mingle_struct( s )
click to toggle source
# File lib/bitgirder/ops/ruby.rb, line 224 def self.from_mingle_struct( s ) self.new( rubies: self.read_rubies_in( s ), default_id: s.get_string( :default_ruby ), ) end
new( *argv )
click to toggle source
Calls superclass method
# File lib/bitgirder/ops/ruby.rb, line 183 def initialize( *argv ) super( *argv ) if @default_id unless @rubies.key?( @default_id ) raise "Default id #@default_id not a defined ruby" end end end
read_rubies_in( s )
click to toggle source
# File lib/bitgirder/ops/ruby.rb, line 208 def self.read_rubies_in( s ) ( s[ :rubies ] || [] ).inject( {} ) do |res, mg_ctx| ctx = RubyContext.from_mingle_struct( mg_ctx ) if res.key?( ctx.id ) raise "Env has multiple ruby contexts with id: #{ctx.id}" else res[ ctx.id ] = ctx end res end end
Public Instance Methods
get_context( id = nil )
click to toggle source
# File lib/bitgirder/ops/ruby.rb, line 194 def get_context( id = nil ) if id @rubies[ id ] or raise "No ruby context with id: #{id}" else if @default_id @rubies[ @default_id ] or raise "Default context #@default_id not set (!?)" else raise "No default ruby context set" end end end