From: <bl...@us...> - 2003-04-29 22:01:25
|
Update of /cvsroot/cpptool/rfta/include/rfta/parser In directory sc8-pr-cvs1:/tmp/cvs-serv28984/include/rfta/parser Modified Files: ASTNodeType.h CPPParser.h Log Message: * implemented CPPParser::parseFunctionImplementationAt() * added node type features to explorer up to function body level Index: ASTNodeType.h =================================================================== RCS file: /cvsroot/cpptool/rfta/include/rfta/parser/ASTNodeType.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** ASTNodeType.h 21 Nov 2002 21:07:27 -0000 1.6 --- ASTNodeType.h 29 Apr 2003 22:00:48 -0000 1.7 *************** *** 41,44 **** --- 41,46 ---- /// Indicates that the node may have scope generator children mayHaveScopeGeneratorChildren = (mayHaveScopeGeneratorProperties << 1), + /// Indicates that the node may contains a function implementation + mayHaveFunctionImplChildren = (mayHaveScopeGeneratorChildren << 1), isCompositeStatement = (isComposite | isStatement), Index: CPPParser.h =================================================================== RCS file: /cvsroot/cpptool/rfta/include/rfta/parser/CPPParser.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CPPParser.h 27 Apr 2003 12:58:24 -0000 1.2 --- CPPParser.h 29 Apr 2003 22:00:50 -0000 1.3 *************** *** 14,22 **** SourceASTNodePtr getSourceNode() const; ! void parseForFunctionBodyAt( int position ); void parseForFunctionDeclarations(); void parseAll(); private: --- 14,34 ---- SourceASTNodePtr getSourceNode() const; ! /*! Search the function body at the specified location and parse it. ! * \return functionImplementation ASTNode if a function body was found ! * at the specified location, \c 0 otherwise. ! * \exception ParserError is throw if a failure occurs during parsing. ! */ ! ASTNodePtr parseForFunctionBodyAt( int position ); void parseForFunctionDeclarations(); + /*! Parse the source completely. + * \exception ParserError is throw if a failure occurs during parsing. + */ void parseAll(); + + private: + ASTNodePtr findFunctionImplementationAt( int position, + const ASTNodePtr &parentNode ) const; private: |