private extend()

in src/objectEnumerationBuilder.ts [110:128]


        private extend(target: VisualObjectInstance, source: VisualObjectInstance, propertyName: string): void {

            let sourceValues = source[propertyName];
            if (!sourceValues)
                return;

            let targetValues = target[propertyName];
            if (!targetValues)
                targetValues = target[propertyName] = {};

            for (let valuePropertyName in sourceValues) {
                if (targetValues[valuePropertyName]) {
                    // Properties have first-writer-wins semantics.
                    continue;
                }

                targetValues[valuePropertyName] = sourceValues[valuePropertyName];
            }
        }