/// <summary> /// Makes this instance concrete. /// </summary> /// <returns>The concrete value generated.</returns> public ValueFactoryWithOptionalConcreteValue MakeConcrete() { if (_isConcrete) { return(this); } else { return(new ValueFactoryWithOptionalConcreteValue(_valueFactory, _valueFactory.GetBaseValue())); } }