Hello,

for the first sight your format looks verybsimilar to key-value files
already supported by GLib:

https://developer.gnome.org/glib/stable/glib-Key-value-file-parser.html
http://valadoc.org/#!api=glib-2.0/GLib.KeyFile

Are you sure it won't work for your problem? If it would, you may want to
subclass it.

Best,
Gergely
On Mar 21, 2016 2:26 PM, "Alan Manuel Gloria" <almkg...@gmail.com> wrote:

> Hi Vala world,
>
> I'm trying to make some kind of description loader.  I have a base class
> like so:
>
> class Concept : Object {
>   string name { get; construct; }
>   string desc { get; construct; }
> }
>
> And one or more classes, e.g.:
>
> class Component : Concept {
>   uint size { get; construct; }
>   uint cost { get; construct; }
> }
> class Weapon : Component {
>   uint damage { get; construct; }
> }
>
> My goal is to parse some text file like so:
>
> [Blaster I]
> type = Weapon
> desc = A simple blaster.
> size = 20
> cost = 200
> damage = 1
>
> Then the parser class will provide a collection of Concept objects
> indexable by name and type.
>
> My question is, how do I best do this?  Gtk.Buildable seems to approximate
> what I want, so I suppose I need to figure out how that works.
>
> My initial research seems to suggest that I need to use GLib.Type somehow,
> but my understanding is that the exact type does not get created until it
> is used.  It seems to me that I'd need code like:
>
> var p = new MyTextFileParser();
> p.register(typeof(Component));
> p.register(typeof(Weapon));
> // ... and so on ...
>
> Thanks in advance.
>
> Sincerely,
> AmkG
> _______________________________________________
> vala-list mailing list
> vala-list@gnome.org
> https://mail.gnome.org/mailman/listinfo/vala-list
>
_______________________________________________
vala-list mailing list
vala-list@gnome.org
https://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to