Source
Instruction generateDefault(
dynamic /* Type | ComponentFactory */ componentCursor) {
if (componentCursor == null) {
return null;
}
var rules = this._rules[componentCursor];
if (rules?.defaultRule == null) {
return null;
}
var defaultChild;
if (rules.defaultRule.handler.componentType != null) {
var componentInstruction = rules.defaultRule.generate({});
if (!rules.defaultRule.terminal) {
defaultChild =
this.generateDefault(rules.defaultRule.handler.componentType);
}
return new DefaultInstruction(componentInstruction, defaultChild);
}
return new UnresolvedInstruction(() {
return rules.defaultRule.handler
.resolveComponentType()
.then((_) => this.generateDefault(componentCursor));
});
}