in src/objectEnumerationBuilder.ts [39:66]
public pushInstance(instance: VisualObjectInstance, mergeInstances: boolean = true): ObjectEnumerationBuilder {
let instances = this.instances;
if (!instances) {
instances = this.instances = [];
}
let containerIdx = this.containerIdx;
if (containerIdx != null) {
instance.containerIdx = containerIdx;
}
if (mergeInstances) {
// Attempt to merge with an existing item if possible.
for (let existingInstance of instances) {
if (this.canMerge(existingInstance, instance)) {
this.extend(existingInstance, instance, 'properties');
this.extend(existingInstance, instance, 'validValues');
return this;
}
}
}
instances.push(instance);
return this;
}