clang::RecursiveASTVisitor does not visit ObjCMessageExpr statement

I am wondering that in RewriteObjC source RecursiveASTVisitor not used

I need to do some actions with all ObjCMessageExpr in my code,
so I am trying to handle all expressions with RecursiveASTVisitor,

I made subclass
class MyASTVisitor : public clang::RecursiveASTVisitor<MyASTVisitor>

and I defined method

bool MyASTVisitor::VisitStmt(Stmt *statement) {
    cout << "LOG: Visit stmt " << GetStatementString(*m_compiler,
*statement) << endl;
    if (ObjCMessageExpr *messageExpr = dyn_cast<ObjCMessageExpr>(statement))
        // some methods
    else if (Expr *expression = dyn_cast<Expr>(statement)) {
        cout << "LOG: expression" << endl;
    return true;

in my cunsumer I call

void MyASTConsumer::HandleTopLevelSingleDecl(Decl *declaration) {
    cout << "LOG: HandleTopLevelSingleDecl" << endl;

But I cannot extract ObjCMessageExpr with this code,

What should I do for that?