How do I in ruby create an instance of every class in each file in a directory and providing it as an array?
Thank you in advance!
Assuming that they all share the same name as their containing .rb file and take no arguments to initialize...
#initialize array of objects
objects = []
#list ruby files in directory
classes = Dir.glob( "*.rb" )
#make method to easily remove file extension
def cleanse( fileName )
return fileName.gsub( ".rb", "" )
end
classes.each do |file|
#require the new class
require fileName
#add it to our array
objects[objects.length] = eval( cleanse(file) + ".new()" )
end