[Gambas-user] Wiki Database

Cedron Dawg cedron at exede.net
Sat May 4 06:38:39 CEST 2019

Hi Tobi,

Thanks so much.  It took three tries, but I got it.  This is going to take some looking at.

I've also been examining the source tree and I may be best off scanning the source.

For C based components, these sections should give me the info I want:

GB_DESC ComplexDesc[] =
	GB_DECLARE("Complex", sizeof(CCOMPLEX)),
	// Utility Methods 
	GB_METHOD("_new", NULL, Complex_new, "[(Real)f(Imag)f]"),
	GB_STATIC_METHOD("_call", "Complex", Complex_call, "[(Real)f(Imag)f]"),
	GB_STATIC_METHOD("Polar", "Complex", Complex_Polar, "[(Abs)f(Arg)f]"),
	GB_METHOD("Copy", "Complex", Complex_Copy, NULL),
	GB_METHOD("ToString", "s", Complex_ToString, "[(Local)b]"),
	GB_METHOD("Conj", "Complex", Complex_Conjugate, NULL),
	//GB_METHOD("Neg", "Complex", Complex_Negative, NULL),
	GB_METHOD("Inv", "Complex", Complex_Inverse, NULL),
	//GB_METHOD("Set", NULL, Complex_Set, "[(Real)f(Imag)f]"),


I also found gb.(name).component files which sometimes have names (and alternative language names), authors, state, dependencies etc.

There are .component files as well.

gambas-master/gb.*/.src  ===> gb.(name).component and C classes

gambas-master/comp/src/gb.*  ===> .component and .src has classes

gambas-master/main/lib/(name)  ===> gb.(name).component and C classes

Will those give me full coverage of the components?

(Still on the learning curve here.)

As for the .info file, that is quite a puzzle.  Is the wiki script you are talking about in?




----- Original Message -----
From: "Tobias Boege" <taboege at gmail.com>

The source code of the wiki is in app/src/gambas-wiki. It seems like the
pages are stored in a flat-file database. While that is a database in some
sense, you maybe had something else in mind when you asked for a schema.

In any case, you can download the database from http://gambaswiki.org/gambas-wiki.tar.bz2

> Looking for This:
> Components
>    1
>    |
>    M
> Classes   
>    1
>    |
>    M
> Members
> and 
> Keywords

All of that is stored in a purer form inside the components' .info files.
These are text files whose format everyone has to reverse-engineer them-
selves. At least I'm not aware of anybody writing down a specification.

They are generated during installation of components, so you only have files
for components you have installed, and they are put into /usr/share/gambas3/info
by default. The wiki script uses those files and naturally includes a parser
for them. [ You know you're in less developed terrain if source code comments
suddenly start being in French :-) ]


"There's an old saying: Don't change anything... ever!" -- Mr. Monk

----[ Gambas mailing-list is hosted by https://www.hostsharing.net ]----

More information about the User mailing list