In ActionScript, is there a way to test for existence of variable with datatype "Function"

Posted by Robusto on Stack Overflow See other posts from Stack Overflow or by Robusto
Published on 2010-05-07T19:21:03Z Indexed on 2010/05/07 19:28 UTC
Read the original article Hit count: 205

Filed under:
|
|
|

So I have a class where I instantiate a variable callback like so:

public var callback:Function;

So far so good. Now, I want to add an event listener to this class and test for existence of the callback. I'm doing like so:

this.addEventListener(MouseEvent.MOUSE_OVER, function(event:MouseEvent) : void {
        if (callback) {
            // do some things
        }
});

This works great, doesn't throw any errors, but everywhere I test for callback I get the following warning:

3553: Function value used where type Boolean was expected.  
Possibly the parentheses () are missing after this function reference.

That bugged me, so I tried to get rid of the warning by testing for null and undefined. Those caused errors. I can't instantiate a Function as null, either.

I know, I know, real programmers only care about errors, not warnings. I will survive if this situation is not resolved. But it bothers me! :) Am I just being neurotic, or is there actually some way to test whether a real Function has been created without the IDE bitching about it?

© Stack Overflow or respective owner

Related posts about flex

Related posts about actionscript