}
}
- GirObject pnode = null;
+
public override void visit_namespace (Vala.Namespace element) {
print("parsing namespace %s\n", element.name);
var g = new Gir.new_empty(element.name);
cache.set(element.name, g);
- pnode = g;
- element.accept_children (this);
+
+
+ foreach(var c in element.get_classes()) {
+ this.add_class(g, c);
+ }
+ foreach(var c in element.get_interfaces()) {
+ this.add_interface(g, c);
+ }
+
}
- public override void visit_class (Vala.Class element) {
- var opn = this.pnode;
- print("got class %s / %s\n", element.name, element.get_full_name());
- var n = element.name;
- var c = new GirObject("Class", this.pnode.name + "." + element.name);
- this.pnode.classes.set(n, c);
- c.ns = this.pnode.ns;
- c.parent = this.pnode.name;
- c.gparent = this.pnode;
- //if (c.parent == null) {
- // c.parent = "";
- //}
- this.pnode = c;
+ public void add_class(GirObject g, Vala.Class cls)
+ {
+
+ var c = new GirObject("Class", g.name + "." + cls.name);
+ g.classes.set(cls.name, c);
+ c.ns = g.ns;
+ c.parent = g.name;
+ c.gparent = g;
+
+ foreach(
element.accept_children (this);
this.pnode = opn;
}
+
+
+
public override void visit_method (Vala.Method element) {
print("got method %s / %s\n", element.name, element.get_full_name() );
var opn = this.pnode;