return this.__index;
}
}
-
+ // CTOR - do nothing..?
public SymbolSet ()
{
if (this.hasSymbol(symbol.alias)) {
- GLib.warning("Overwriting symbol documentation for: %s.",symbol.alias);
+ GLib.warning("Skip Overwriting symbol documentation for: %s.",symbol.alias);
+ return;
}
this._index.set(symbol.alias, symbol);
}
foreach (var p in this.keys()) {
var symbol = this.getSymbol(p);
- if (symbol.is("FILE") || symbol.is("GLOBAL")) continue;
+ if (symbol.is("FILE") || symbol.is("GLOBAL")) {
+ continue;
+ }
// the memberOf value was provided in the @memberOf tag
- else if (symbol.memberOf.length > 0) {
+
+ GLib.debug("Resolve: %s memberOf=%s", symbol.alias, symbol.memberOf);
+ if (symbol.memberOf.length > 0) {
var regex = new GLib.Regex("^("+symbol.memberOf+"[.#-])(.+)$");
GLib.MatchInfo minfo;
var parts = regex.match_full(symbol.alias, -1, 0, 0 , out minfo);
// like foo.bar is a memberOf foo
if (parts) {
-
symbol.memberOf = minfo.fetch(1);
symbol.private_name = minfo.fetch(2);
}
this.renameSymbol(p, symbol.memberOf + symbol.name);
}
- }
+ } else {
// the memberOf must be calculated
- else {
+
GLib.MatchInfo minfo;
var parts = /^(.*[.#-])([^.#-]+)$/.match_full(symbol.alias, -1, 0, 0 , out minfo);
}
// set isStatic, isInner
- if (symbol.memberOf.length > 0) {
+ if (symbol.memberOf.length > 0 && !symbol.is("CONSTRUCTOR")) {
switch (symbol.memberOf[symbol.memberOf.length-1]) {
case '#' :
symbol.isStatic = false;
}
//print("looking for memberOf: " + symbol.memberOf + " FOR " + symbol.alias);
// add to parent's methods or properties list
+ GLib.debug("Trying to add '%s' to '%s'", symbol.alias, symbol.memberOf);
+
if (symbol.memberOf.length > 0) {
var container = this.getSymbol(symbol.memberOf);
if (container == null) {
+ GLib.debug("Could not find container for '%s'", symbol.memberOf);
if (SymbolSet.isBuiltin(symbol.memberOf)) {
container = DocParser.addBuiltin(symbol.memberOf);
}
}
}
- if (container != null && !container.isNamespace) {
+ if (container != null && (!container.isNamespace || container.isStatic)) {
+ GLib.debug("Calling addMember for '%s' onto '%s'", symbol.alias, container.alias);
container.addMember(symbol);
}
}
if (contributer != null) {
- contributer.childClasses.add(symbol.alias);
+ //contributer.childClasses.add(symbol.alias); << removed we do this in one go later.
symbol.inheritsFrom.add(contributer.alias);
//if (!isUnique(symbol.inheritsFrom)) {
// imports.BuildDocs.Options.LOG.warn("Can't resolve augments: Circular reference: "+symbol.alias+" inherits from "+contributer.alias+" more than once.");