private FlowGraphsVariableOverlay(FlowGraphsVariableOverlay <T> other, Func <T, T> valueCloner) { this.globalVariableOverlay = other.globalVariableOverlay.Clone(valueCloner); this.localVariableOverlay = other.localVariableOverlay.Clone(overlay => overlay.Clone(valueCloner)); }
public FlowGraphsVariableOverlay(Func <T> defaultValueFactory = null) { this.globalVariableOverlay = new GlobalFlowVariableOverlay <T>(defaultValueFactory); this.localVariableOverlay = new FlowGraphOverlay <LocalFlowVariableOverlay <T> >( () => new LocalFlowVariableOverlay <T>(defaultValueFactory)); }