diff --git a/shared/cplusplus/Parser.cpp b/shared/cplusplus/Parser.cpp index 05836e9fca0e8d30fe92cf484c4b97a725d0c886..e863de5a941bfa0dec5db731372fb5d032f999ae 100644 --- a/shared/cplusplus/Parser.cpp +++ b/shared/cplusplus/Parser.cpp @@ -395,6 +395,28 @@ bool Parser::parseDeclaration(DeclarationAST *&node) case T_EXPORT: return parseTemplateDeclaration(node); + // objc++ + case T_AT_CLASS: + return parseObjCClassDeclaration(node); + + case T_AT_INTERFACE: + return parseObjCInterfaceDeclaration(node); + + case T_AT_PROTOCOL: + return parseObjCProtocolDeclaration(node); + + case T_AT_END: + return parseObjCEndDeclaration(node); + + case T_AT_COMPATIBILITY_ALIAS: + return parseObjCAliasDeclaration(node); + + case T_AT_SYNTHESIZE: + return parseObjCPropertySynthesize(node); + + case T_AT_DYNAMIC: + return parseObjCPropertyDynamic(node); + default: if (LA() == T_EXTERN && LA(2) == T_TEMPLATE) return parseTemplateDeclaration(node); @@ -3261,4 +3283,39 @@ bool Parser::parseThrowExpression(ExpressionAST *&node) return false; } +bool Parser::parseObjCClassDeclaration(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCInterfaceDeclaration(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCProtocolDeclaration(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCEndDeclaration(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCAliasDeclaration(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCPropertySynthesize(DeclarationAST *&node) +{ + return false; +} + +bool Parser::parseObjCPropertyDynamic(DeclarationAST *&node) +{ + return false; +} + CPLUSPLUS_END_NAMESPACE diff --git a/shared/cplusplus/Parser.h b/shared/cplusplus/Parser.h index 6059aa683753986fef62d7a58dc7d3d0db2e5f56..f0dc3c7a9de63bf95269e4ec170defd3e89affef 100644 --- a/shared/cplusplus/Parser.h +++ b/shared/cplusplus/Parser.h @@ -203,6 +203,15 @@ public: bool parseUsingDirective(DeclarationAST *&node); bool parseWhileStatement(StatementAST *&node); + // ObjC++ + bool parseObjCClassDeclaration(DeclarationAST *&node); + bool parseObjCInterfaceDeclaration(DeclarationAST *&node); + bool parseObjCProtocolDeclaration(DeclarationAST *&node); + bool parseObjCEndDeclaration(DeclarationAST *&node); + bool parseObjCAliasDeclaration(DeclarationAST *&node); + bool parseObjCPropertySynthesize(DeclarationAST *&node); + bool parseObjCPropertyDynamic(DeclarationAST *&node); + // Qt MOC run bool parseQtMethod(ExpressionAST *&node);