This is just pseudo-code. I just forgot to put them in. Let me try to correct it to make it a bit more C++-ish. I should probably also note that the error I'm getting involves the functor not taking 1 argument.
I'm trying to avoid using virtual functions here for similar overhead reasons. Perhaps there's a different construct that I'm not seeing?