diff --git a/documentation/current/eiffel/Language_reference/void-safe-programming-eiffel/creating-new-void-safe-project.wiki b/documentation/current/eiffel/Language_reference/void-safe-programming-eiffel/creating-new-void-safe-project.wiki index 972b630a..57e9e2e7 100644 --- a/documentation/current/eiffel/Language_reference/void-safe-programming-eiffel/creating-new-void-safe-project.wiki +++ b/documentation/current/eiffel/Language_reference/void-safe-programming-eiffel/creating-new-void-safe-project.wiki @@ -167,7 +167,7 @@ So in this simple form, attached x can be used instead of x / There is a code pattern for functions that exists in some Eiffel software to effect "once-per-object / lazy evaluation". -{{note|As of EiffelStudio version 6.6, the use of this code pattern effecting "once per object" is no longer necessary. V6.6 includes explicit support for once routines which can be adjusted by a [[ET: Other Mechanisms#Adjusting once semantics with "once keys"|once key]] to specify once per object.}} +{{note|As of EiffelStudio version 6.6, the use of this code pattern effecting "once per object" is no longer necessary. V6.6 includes explicit support for once routines which can be adjusted by a [[ET: Once routines and shared objects#Adjusting once semantics with "once keys"|once key]] to specify once per object.}} This "once-per-object" code pattern employs a cached value for some object which is not exported. When it is applied, the "once-per-object" function checks the attachment status of the cached value. If the cached value is void, then it is created and assigned to Result. If the cached value was found already to exist, then it is just assigned to Result.