[Gambas-user] Class name collision?
Tobias Boege
taboege at gmail.com
Tue Jun 18 23:00:45 CEST 2019
On Tue, 18 Jun 2019, Yeshua Rodas wrote:
> Hello coders.
>
> You'll see, I was very happy working on my Gambas project (a Query
> Builder), at the beginning I just wanted to face the String handling and
> construction. Now I have an experimental component y I tried to test in a
> more realistic scenario with the `gb.db` Component.
>
> BUT
>
> I realize now that one of my Classes (`Table`) has the same name of `Table`
> on the `gb.db` Component. So, is there some way to resolve those class name
> collision or I must change my class name?
>
Namespaces are a feature that has been requested occasionally, but they're
not available yet, sorry.
BTW, the runtime resolves such a naming conflict -- when you export a class
Table while another of the same name already exists in the global symbol
table (via gb.db) -- by merging both classes using the same mechanism that
inheritance would use. This is a cool feature in general and in a particular
case you might end up in a state where your program can run successfully,
but you're really creating some freaky chimera class. I would suggest to
rename your class instead, yes.
If you use other components, watch out for other common names. Request from
gb.web has bitten me before, for instance.
Regards,
Tobi
--
"There's an old saying: Don't change anything... ever!" -- Mr. Monk
More information about the User
mailing list