Hi,
I need to load scripts dynamically.
Is there a way to know about what
classes were defined by loading a script?
If not, can the Ruby system be asked for a collection
of subclasses for a particular Class?
thx
Hi,
I need to load scripts dynamically.
Is there a way to know about what
classes were defined by loading a script?
If not, can the Ruby system be asked for a collection
of subclasses for a particular Class?
thx
On Wed, 15 Feb 2006, raving_ruby_rider wrote:
Is there a way to know about what
classes were defined by loading a script?
see dynaload
http://rubyforge.org/frs/?group_id=1024&release_id=3786
http://codeforpeople.com/lib/ruby/dynaload/dynaload-0.0.0/README
is use it for the very same.
If not, can the Ruby system be asked for a collection of subclasses for a
particular Class?
harp:~ > cat a.rb
class C
class << self
def children() @children ||= [] end
def inherited(other) children << other and super end
def descendants() children.inject([]){|d,c| d.push(c,
*c.descendants)} end
end
end
load "b.rb"
p C::children
p C::descendants
p B::children
p B::descendants
harp:~ > cat b.rb
class B < C; end
class D < B; end
harp:~ > ruby a.rb
[B]
[B, D]
[D]
[D]
regards.
-a
On Wed, 2006-02-15 at 22:53 +0900, raving_ruby_rider wrote:
Is there a way to know about what
classes were defined by loading a script?
I’ve done something like this before:
sc, ec = [], []
# => [[], []]
ObjectSpace.each_object(Class) { |c| sc << c }
# => 471
require 'generator'
# => true
ObjectSpace.each_object(Class) { |c| ec << c }
# => 473
new_classes = ec - sc
# => [SyncEnumerator, Generator]
If not, can the Ruby system be asked for a collection
of subclasses for a particular Class?
See above (the argument to each_object).
[email protected] wrote:
On Wed, 15 Feb 2006, raving_ruby_rider wrote:
Is there a way to know about what
classes were defined by loading a script?see dynaload
http://rubyforge.org/frs/?group_id=1024&release_id=3786
http://codeforpeople.com/lib/ruby/dynaload/dynaload-0.0.0/README
There’s also
http://raa.ruby-lang.org/project/script/
http://redshift.sourceforge.net/script/doc/index.html
thx 2 all.
i like the Script encapsulation
Ross B. wrote:
If not, can the Ruby system be asked for a collection
of subclasses for a particular Class?See above (the argument to each_object).
Heh. If you make your terminal black and green and run this:
ObjectSpace.each_object(Object) { |o| puts o }
… you will see the truth of the Matrix.
-dave
Dave C. [email protected] writes:
Heh. If you make your terminal black and green and run this:
ObjectSpace.each_object(Object) { |o| puts o }
… you will see the truth of the Matrix.
-dave
You get used to it. I don’t even see the code. All I see is Symbol,
String, Array, …
Cypher.
George O. wrote:
You get used to it. I don’t even see the code. All I see is Symbol,
String, Array, …
These show what gets mixed in from where:
http://www.insula.cz/dali/material/rubycl/
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs