require 'ruby_ext/gems' core = [ 'facets/array/indexable', # Array first!, last! 'facets/enumerable/every', 'facets/enumerable/group_by', 'facets/exception/detail', # pretty print 'facets/object/dup', # false.dup(), false.clone() and so on. 'facets/kernel/blank', 'facets/numeric/round.rb', # round_at, round_to 'facets/hash', 'facets/string/interpolate', # 'facets/ostruct', # 'facets/openobject' it has broken implementation and is completelly rewritend in ruby-ext ] more = [ # 'facets/basicobject', causes problem with rspec # 'facets/opencascade', causes problem with redefined OpenObject ] (core + more).each{|f| require f} { :BasicObject => 'basic_object', :OpenObject => 'open_object', :OpenConstructor => 'open_constructor', :Observable2 => 'observable2', :ExtraBlankSlate => 'extra_blank_slate', # do I need it? :Tuple => 'tuple', }.each{|klass, file| Kernel.autoload klass, "ruby_ext/#{file}"} %w{ file array hash kernel module not_defined object class string symbol deep_clone declarative_cache must prepare_arguments synchronize micelaneous multiple_inheritance }.each{|f| require "ruby_ext/#{f}"}