Name
as — coercion
Syntax
value as class
Description
When you use the as operator,
you’re asking AppleScript to perform the coercion.
If this is a coercion AppleScript is willing to perform (as described
in the rest of this chapter), the result is a new value of the
requested datatype. If not, there’s a runtime error.
Examples
9 as string -- "9" 9 as boolean -- error
Even though a variable’s value can be a class, you can’t use a variable as the second operand in a coercion. This won’t even compile:
set className to string
9 as className -- compile-time errorAppleScript must see a class name right there in the script at compile time, or it won’t parse the line. (I regard this as a bug.)
Do not confuse a coercion with an object string specifier! (See Section 10.9.) This is a coercion:
"xxx:" as alias
This is an object string specifier:
alias "xxx:"
The distinction can be crucial. There are circumstances where the coercion will compile but the object specifier will not. You can’t compile an alias specifier unless the file exists; but you can compile a coercion from a string to an alias, because the string is just a string. And there are circumstances where the object string specifier will compile but the coercion will not. You can form a file specifier using a pathname string, but you can’t coerce anything, not even a pathname string, to a file object.
A special case of coercion arises
when you say as in the context of a
get, implicit or explicit, targeted at an application. When you do this, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access