[Kde-bindings] KDE/kdebindings/kalyptus

Richard Dale Richard_Dale at tipitina.demon.co.uk
Mon May 19 09:35:02 UTC 2008


SVN commit 809702 by rdale:

* Kalyptus had an error parsing a class with the same name as the enclosing namespace,
  such as Soprano::Error::Error.
* Added some fixes to get the code generation for the Soprano smoke lib working

CCMAIL: kde-bindings at kde.org

 M  +3 -1      kalyptus  
 M  +15 -5     kalyptusCxxToSmoke.pm  


--- trunk/KDE/kdebindings/kalyptus/kalyptus #809701:809702
@@ -1276,9 +1276,11 @@
 
 	my $access = "private";
 	$access = "public" if $cNodeType ne "class";
-
 	# try to find an exisiting node, or create a new one
 	my $oldnode = kdocAstUtil::findRef( $cNode, $name );
+    if ($oldnode->{NodeType} ne $cNodeType) {
+		$oldnode = undef;
+    }
 	my $node = defined $oldnode ? $oldnode : Ast::New( $name );
 
 	if ( $endTag ne "{" ) {
--- trunk/KDE/kdebindings/kalyptus/kalyptusCxxToSmoke.pm #809701:809702
@@ -168,7 +168,7 @@
    'WState'  =>  'int',
 );
 
-$headerSubdirectories = "kio/|phonon/ui/|kmediaplayer/|dnssd/|solid/|solid/ifaces/|phonon/|sonnet/|kdevelop/|kinterfacedesigner/|kontact/|kate/|kparts/|dom/|kabc/|ksettings/|kjs/|ktexteditor/|kdeprint/|kdesu/|knewstuff/|plasma/|plasma/widgets/|kresources|soprano|nepomuk/"
+$headerSubdirectories = "kio/|phonon/ui/|kmediaplayer/|dnssd/|solid/|solid/ifaces/|phonon/|sonnet/|kdevelop/|kinterfacedesigner/|kontact/|kate/|kparts/|dom/|kabc/|ksettings/|kjs/|ktexteditor/|kdeprint/|kdesu/|knewstuff/|plasma/|plasma/widgets/|kresources/|soprano/|nepomuk/"
 
 }
 
@@ -350,7 +350,6 @@
 {
 	my( $classNode ) = @_;
 	my $className = join( "::", kdocAstUtil::heritage($classNode) );
-
 	if (	$classNode->{Deprecated} 
 			|| $classNode->{NodeType} eq 'union' 
 			|| $#{$classNode->{Kids}} < 0
@@ -442,7 +441,14 @@
 			|| $className eq 'QWidgetData'
 			|| $className eq 'QWriteLocker'
 			|| $className eq 'QX11Info'
-			|| $className eq 'QwtScaleDiv' )
+			|| $className eq 'QwtScaleDiv'
+			|| $className eq 'Soprano::QueryResultIteratorBackend'
+			|| $className eq 'Soprano::Client::UnixSocketClient'
+			|| $className eq 'Soprano::Client::LocalSocketClient'
+			|| $className eq 'Soprano::Client::TcpClient'
+			|| $className eq 'Soprano::Client::DBusClient'
+			|| $className eq 'Soprano::Util::SimpleStatementIterator'
+			|| $className eq 'Soprano::Error::ErrorCache' )
 	{
 	    print STDERR "Skipping $className\n" if ($debug);
 	    print STDERR "Skipping union $className\n" if ( $classNode->{NodeType} eq 'union');
@@ -575,6 +581,10 @@
 			|| ($classNode->{astNodeName} eq 'KStandardShortcut' and $name eq 'insert')
 			|| ($classNode->{astNodeName} eq 'KTzfileTimeZoneSource' and $name eq 'location')
 			|| ($classNode->{astNodeName} eq 'Wallet' and $name eq 'Wallet')
+			|| ($className eq 'Soprano::Server::ServerCore' and $name eq 'backendSettings')
+			|| ($className eq 'Soprano::Index::CLuceneIndex' and $name eq 'search')
+			|| ($className eq 'Soprano::NodeIterator' and $name eq 'NodeIterator' && $#{$m->{ParamList}} == 0 && $m->{ParamList}[0]->{ArgType} =~ /Backend/)
+			|| ($className eq 'Soprano::StatementIterator' and $name eq 'StatementIterator' && $#{$m->{ParamList}} == 0 && $m->{ParamList}[0]->{ArgType} =~ /Backend/)
 			|| ($classNode->{astNodeName} eq 'KMD5' and $name eq 'transform') ) 
 		{
 		    $m->{NodeType} = 'deleted';
@@ -1806,7 +1816,7 @@
     $type =~ s/\s+const$//; # for 'char* const'
     $type =~ s/\s+const\s*\*$/\*/; # for 'char* const*'
 	
-	$type =~ s/(<[^>]*)\s+([^>]*>)/$1$2/; # Remove embedded space from template types, such as
+	$type =~ s/(<[^>]*),\s+([^>]*>)/$1,$2/; # Remove embedded space from template types, such as
 										  # 'QMap<QCString, DCOPRef>'
 
     return if ( $type eq 'void' or $type eq '' or $type eq '~');
@@ -1871,7 +1881,7 @@
     $type =~ s/\s+const$//; # for 'char* const'
     $type =~ s/\s+const\s*\*$/\*/; # for 'char* const*'
 
-	$type =~ s/(<[^>]*)\s+([^>]*>)/$1$2/; # Remove embedded space from template types, such as
+	$type =~ s/(<[^>]*),\s+([^>]*>)/$1,$2/; # Remove embedded space from template types, such as
 										  # 'QMap<QCString, DCOPRef>'
 
     return undef if ( $type =~ '~' or $type eq 'void' or $type eq '' );



More information about the Kde-bindings mailing list