From cc1e1619d21b610daeb9ca213b65151c3086f42b Mon Sep 17 00:00:00 2001 From: eiffel-org Date: Wed, 27 Sep 2017 17:21:56 +0000 Subject: [PATCH] Update wikipage Event Programming with Agents. (Signed-off-by:alexk). git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1908 abb3cda0-5349-4a8f-a601-0c33ac3a8c38 --- .../eiffel-net/event-programming-agents.wiki | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/17.05/solutions/platform-specifics/microsoft-windows/net/eiffel-net-language/eiffel-net/event-programming-agents.wiki b/documentation/17.05/solutions/platform-specifics/microsoft-windows/net/eiffel-net-language/eiffel-net/event-programming-agents.wiki index bf1d6dec..bfb92a96 100644 --- a/documentation/17.05/solutions/platform-specifics/microsoft-windows/net/eiffel-net-language/eiffel-net/event-programming-agents.wiki +++ b/documentation/17.05/solutions/platform-specifics/microsoft-windows/net/eiffel-net-language/eiffel-net/event-programming-agents.wiki @@ -93,14 +93,14 @@ To leave an argument open, you hold its place with a question mark. If you inten my_procedure := agent two_argument_procedure (?, 2) -- Argument 1 left open my_procedure := agent two_argument_procedure (?, ?) -- Both arguments left open - my_procedure := agent two_argument_procedure -- Both arguments left open + my_procedure := agent two_argument_procedure -- Both arguments left open If an argument is open, then it means that a value is not provided for that argument at the time that the agent is created. The implication is that the value must be provided at some time prior to the time that the agent's associated routine gets executed. A precondition to executing a routine associated with an agent is that the agent has a valid set of arguments (called operands within the ROUTINE classes) for the call. If you were to leave one or both of the arguments to two_argument_procedure open as in the examples above, the assignment would still work due to the rules governing TUPLE conformance. But, at runtime unless the other arguments had been provided, the "valid operands" precondition would be violated. Let's see an example in which we leave a target open. Suppose we have a class that has a feature coded as below - my_strings: LINKED_LIST [STRING] + my_strings: LINKED_LIST [STRING] and some code to put some strings in my_strings: