From: wolf Date: Wed, 9 May 2001 12:52:57 +0000 (+0000) Subject: Add nodes for friend classes, but don't output them at present. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=04dcd42b2b8174634670e35ee89e7d11b7ba7034;p=dealii-svn.git Add nodes for friend classes, but don't output them at present. git-svn-id: https://svn.dealii.org/trunk@4580 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/contrib/kdoc/src/kdoc b/deal.II/contrib/kdoc/src/kdoc index 7992f246ea..6992a708cd 100755 --- a/deal.II/contrib/kdoc/src/kdoc +++ b/deal.II/contrib/kdoc/src/kdoc @@ -592,6 +592,14 @@ sub identifyDecl $newNode = newEnum( $enumname ); } + # friend class declaration + elsif ( $decl =~ /\s*((?:template\s*<.*>)?) + \s*friend + \s+((?:class|struct)\s+.*);/xs ) { + print "Friend class: [$1] [$2]\n" if $debug; + $newNode = newFriendClass ($2, $1); + } + # Class/Struct elsif ( $decl =~ /^\s*((?:template\s*<.*>)?) # 1 template \s*(class|struct|union|namespace) # 2 struct type @@ -1120,6 +1128,26 @@ sub newTypedef return $node; } + + +# note: at present we add nodes for friends, but we don't output them +sub newFriendClass +{ + my ( $className, $templates ) = @_; + + my ( $node ) = Ast::New( $name ); + + $node->AddProp( "NodeType", "friend class" ); + $node->AddProp( "Name", $className ); + $node->AddProp( "Templates", $templates ); + + kdocAstUtil::attachChild( $cNode, $node ); + + return $node; +} + + + =head2 newTypedefComp Params: realtype, name endtoken