calling my framework

M

Mario Ruiz

I'm developing a framework but I would like to call the classes as I was
in Java.
An example:
requiere 'myAclasses'
requiere 'myBclasses'
vA=myclass22.new()
vB=myclass55.new()

The problem is that I don't know where are these classes and I would
like to call them something like this:
vA=myAclasses.myclass22.new()
vB=myBclasses.myclass55.new()

Is this possible???
How can I do it?

Thans in advance.
 
E

Eivind Eklund

I'm developing a framework but I would like to call the classes as I was
in Java.
An example:
requiere 'myAclasses'
requiere 'myBclasses'
vA=myclass22.new()
vB=myclass55.new()

The problem is that I don't know where are these classes and I would
like to call them something like this:
vA=myAclasses.myclass22.new()
vB=myBclasses.myclass55.new()

Is this possible???
How can I do it?

Note that true class names has to start with an uppercase letter; I've
compensated for that below.

First, you can do module wrapping (namespacing):

module MyAclasses
class Myclass22
end
end

and call as
MyAclasses::Myclass22.new

Second, you could do this using a method that returns a class object.

In other words, something like

class MyAClassContainer
def myclass22
return MyClass22
end
end
myAclasses = MyAClassContainer.new # (or any other factory method)
mya = myAclasses.myclass22.new

The latter technique can be useful if your hierarchy and what you want
to produce change at runtime. It seems like very many levels of
indirection, though, so I would think carefully of whether it is
necessary. (Each level of indirection tends to make things harder to
grasp/think about/debug.)

Eivind.
 
M

Mario Ruiz

The first seems to be the solution to my problem, I didn't realize
before.
Even you can add more modules:
module Mod1
module Mod2
class Clas1
end Class
end
end

a=Mod1::Mod2::Clas1.new()

That's great!!!

Thank you very much.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Staff online

Members online

Forum statistics

Threads
473,767
Messages
2,569,571
Members
45,045
Latest member
DRCM

Latest Threads

Top