User Guide

return (keyword) 223
return (keyword)
Usage
-- Lingo syntax
return expression
Description
Keyword; returns the value of expression and exits from the handler. The expression
argument can be any Lingo value.
When calling a handler that serves as a user-defined function and has a return value, you must use
parentheses around the argument lists, even if there are no arguments, as in the
diceRoll
function handler discussed under the entry for the
result function.
The function of the
return keyword is similar to that of the exit command, except that return
also returns a value to whatever called the handler. The
return command in a handler
immediately exits from that handler, but it can return a value to the Lingo that called it.
The use of
return in object-oriented scripting can be difficult to understand. Its easier to start by
using
return to create functions and exit handlers. Later, you will see that the return me line in
an
on new handler gives you a way to pass back a reference to an object that was created so it can
be assigned to a variable name.
The
return keyword isnt the same as the character constant RETURN, which indicates a carriage
return. The function depends on the context.
To retrieve a returned value, use parentheses after the handler name in the calling statement to
indicate that the named handler is a function.
To see an example of
return (keyword) used in a completed movie, see the Parent
Scripts movie in the Learning/Lingo Examples folder inside the Director application folder.
Example
This handler returns a random multiple of 5 between 5 and 100:
on getRandomScore
theScore = 5 * random(20)
return theScore
end getRandomScore
Call this handler with a statement similar to the following:
thisScore = getRandomScore()
In this example, the variable thisScore is assigned the return value from the function
getRandomScore(). A parent script performs the same function: by returning the object
reference, the variable name in the calling code provides a handle for subsequent references to
that object.
See also
result, RETURN (constant)